1:Docker安装,由于Docker后续pull镜像的服务器默认是在国外的,速度实在是太慢,这里使用阿里云的镜像

阿里云的Docker CE 镜像源站进行安装 docker

===========Ubuntu 14.04/16.04(使用 apt-get 进行安装)======

# step : 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common # step : 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - # Step : 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" # Step : 更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce # 安装指定版本的Docker-CE:
# Step : 查找Docker-CE的版本:
# apt-cache madison docker-ce
# docker-ce | 17.03.~ce-~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# docker-ce | 17.03.~ce-~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step : 安装指定版本的Docker-CE: (VERSION例如上面的17.03.1~ce-~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION] =========CentOS (使用 yum 进行安装)====== # step : 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step : 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step : 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step : 开启Docker服务
sudo service docker start # 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ee.repo
# 将[docker-ce-test]下方的enabled=0修改为enabled=
#
# 安装指定版本的Docker-CE:
# Step : 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03..ce-.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03..ce-.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03..ce-.el7.centos docker-ce-stable
# Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.-.el7.centos)
# sudo yum -y install docker-ce-[VERSION] ======安装校验Docker是否成功 root@fengge:$ docker version

check一下是否安装成功!

2:Docker常用的一些指令

========Docker 拉取一个redis镜像并后台启动
docker search redis;
docker pull redis:latest; docker run --name zrfredis -p : -d redis:latest redis-server docker stop redis容器id;
docker start redis 容器id; 网上有些文章说,要让docker 的容器自动在开机启动,是写脚本,比如在 rc.local 中写。
其实完全没必要这么麻烦,docker 有相关指令,docker run 指令中加入 --restart=always 就行。
sudo docker run --restart=always ..... 如果创建时未指定 --restart=always ,可通过update 命令设置
docker update --restart=always xxx ==》 docker run --name zrfredis03 -p : -d --restart=always redis redis-server ==》docker run --name zrfmysql01 -p : -d --restart=always -e MYSQL_ROOT_PASSWORD=aoe88 mariadb =============
我的阿里云镜像配置
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://qq_T_a9h7mv3n.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker ============================
一、普通指令 启动 Docker
sudo systemctl start docker 停止 Docker
sudo systemctl stop docker 普通重启 Docker
sudo systemctl restart docker 修改配置后重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker 查看版本
docker version 查看Docker 信息
docker info Docker 帮助
docker --help 二、镜像命令 列出本机Docker上已经安装的镜像:
docker images 搜索Docker hub上面的镜像 # 普通搜索,以Tomcat为例
docker search tomcat # 搜索star大于50的镜像实例
docker search -s tomcat 从Docker Hub上面下载镜像 # 以下载tomcat为例
docker pull tomcat[:version]
删除本地的某一个镜像 # 以删除mysql为例
docker rmi mysql[:version]
# 通过镜像ID删除
docker rmi -f 镜像ID
# 通过镜像ID删除多个
docker rmi -f 镜像名1:TAG 镜像名2:TAG
# 删除全部
# docker images -qa : 获取所有镜像ID
docker rmi -f $(docker images -qa) 镜像打包与运行 #打包一个我们自己的 mysql
docker commit -a fengge -m="package my tomcat" 要打包的镜像ID fengge/mysql:1.0
# -a : 作者名称
# -m : 打包信息 #启动我们自己打包生成的 mysql
docker run -it -p : fengge/mysql:1.0 三、容器命令 启动容器 # 新建并进入容器,最后一个为本地容器的ID
docker run -it --name="rivercentos001" 9f38484d220f # 为容器启一个名称
-name="新容器名称"
# 后台运行容器,并返回容器ID,也就是启动守护士容器
-d
# 以交互模式运行容器,通常与-t同时使用.
-i
# 为容器重新分配一个伪终端,通过与-i同时使用
-t
# 随机端口映射 [大写P]
-P
# 端口映射 [小写P]
-p
# 数据卷 加参数 ro:容器内的目录只读,不可写
-v /宿主机绝对路径目录:/容器内目录[:ro] 镜像名 查看当前正在运行的Docker 容器 docker ps
# 参数
# 列出当前正在运行的以及历史上运行过的
-a
# 显示最近创建的容器
-l
# 显示最近创建的N个容器
-n
# 静默模式,只显示容器编号
-q
# 不截断输出
--no-trunc 退出容器 # 退出并停止
exit # 容器不停止退出
ctrl+P+Q 启动容器
docker start 容器ID或容器name 重启容器
docker restart 容器ID或容器name 停止
docker stop 容器ID或容器name 强制停止
docker kill 容器ID或容器name 删除容器 # 删除已经停止的容器
docker rm 容器ID或容器name
# 强制删除已经停止或正在运行的容器
docker rm -f 容器ID或容器name 一次性删除所有正在运行的容器
docker rm -f $(docker ps -qa) 重新进入容器 # 第一种方式
docker attach 容器ID或容器名称
# 第二种方式{隔山打牛式,在宿主机向容器发送命令并获取结果}
docker exec -t 容器ID或容器名称 ls# 列出文件列表
# 交互
docker exec -it rivertomcat /bin/bash
从容器内拷贝文件到宿主机 docker cp 容器ID或容器名称:/文件路径与文件名 宿主机地址
# 例,拷贝容器river的aaa文件夹下的a.txt到宿主机的当前位置
docker cp river:/aaa/a.txt .
四、日志命令 docker logs -f -t --tail 容器ID或容器名称
# 加入的时间戳
-t
# 跟随最新的日志打印
-f
# 输出最后几行的日志
--tail 行数 # 启动一个centos,并且每两秒在Console输出一个Hello fengge
docker run -d --name river centos /bin/sh -c "while true;do echo hello fengge;sleep 2;done"
# 查看最后10行的日志
docker logs -f -t --tail river #查看容器内的进程
docker top 容器ID或容器名称 五、DockerFile解析 FROM 基础镜像,当前新镜像是基于哪个镜像的。 MAINTAINER 镜像维护者的姓名和邮箱地址。 RUN 容器构建时需要运行的命令。 EXPOSE 当前容器对外暴露出的端口。 WORKDIR 指定在创建容器后,终端默认登陆的进来工作目录,也不是运行并登录进来的当前目录位置。 ENV 用来构建镜像过程中设置环境变量。 ADD 将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包。 COPY 类似ADD,但只是复制,不带解压压缩包的功能。 VOLUME 容器数据卷,用于数据保存和持久化工作。 CMD 指定一个容器启动时要运行的命令,DockerFile中可以有多个CMD指令,但只有最后一个会生效执行。 ENTRYPOINT 指定一个容器启动时要运行的命令 ENTRYPOINT的作用和CMD一样,都是在指定容器启动程序及参数 相当于CMD的升级版本,CMD只能执行一条命令,运行时如果加一些参数是不行的.但如果把CMD替换成ENTRYPOINT就可以在Run镜像的时候在尾部追回指令. 简单的说如果Run镜像的时候追回了命令,CMD会用追回的覆盖掉旧的,ENTRYPOINT会追回执行。 ONBUILD 当构建一个被继承的DockerFile时运行命令,父镜像在被子继承后父镜像的onbuild被触发。

3:直接上学习的一些主要的截图(Redis/MariaDB的容器使用后台全自动启动):

  设置Redis/MariaDB容器后台全自动启动

重启Linux以及关机开机Linux系统后,发现相关容器已经启动

客户端连接Docker中的Redis容器实例成功!

有时候我们需要直接进入如 Redis的Docker容器中

Docker(Linux)学习笔记以及Redis/MariaDB的容器使用后台全自动启动的更多相关文章

  1. Docker学习笔记之--.Net Core应用容器通过网桥连接Redis容器(环境:centos7)

    上节演示通过应用容器连接sql server容器,连接:Docker学习笔记之--.Net Core项目容器连接mssql容器(环境:centos7) 本节演示安装 redis容器,通过网桥连接 先决 ...

  2. Linux~学习笔记目录索引

    回到占占推荐博客索引 本篇文章是对自己学习Linux及在它的环境下部署工具的一个总结,以方便自己查阅,也给他人一个帮助,本文章同时会不断的更新,欢迎大家订阅! 本目录包括的内容会包括linux基础命令 ...

  3. SpringBoot学习笔记:Redis缓存

    SpringBoot学习笔记:Redis缓存 关于Redis Redis是一个使用ANSI C语言编写的免费开源.支持网络.可基于内存亦可以持久化的日志型.键值数据库.其支持多种存储类型,包括Stri ...

  4. Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...

  5. linux学习笔记2-linux的常用命令

    第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ======== ...

  6. Linux学习笔记(一)2015.4.13

    研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1 ...

  7. 20160127 linux 学习笔记

    Linux学习笔记第一天 Linux基本介绍 Linux的起源和发展: 简单说linux是一种操作系统,可以安装在包括服务器.个人电脑,乃至PDA.手机.打印机等各类设备中. 起源: Linux起源于 ...

  8. linux —— 学习笔记(汇总)

    笔记目录:一.系统知识 和 基本概念                    二.常用操作                   三.系统管理(内存.设备.服务等管理)                   ...

  9. Linux学习笔记-林耐斯Notes-Linux就该这么学

    Linux学习笔记... 参考的优秀Linux网站: http://www.w3cschool.cn/linux/ http://www.linuxeye.com/ http://linux.vbir ...

随机推荐

  1. C#NPOI对Excel的操作、导入导出时异常处理、最全的NPOI资料在这里~

    一.Excel理论知识 最新版NPOI2.4.1链接:https://pan.baidu.com/s/1iTgJi2hGsRQHyw2S_4dIUw  提取码:adnq • 整个Excel表格叫做工作 ...

  2. 从HTML开始

    <html>:做网页,是一种超文本标记语言. 超文本:既有添加文本的能力,还可以添加图片,视频等多媒体元素. 标记:由标签组成.不同的标签有不同的效果.        开始标签,结束标签. ...

  3. ABP进阶教程7 - 功能按钮

    点这里进入ABP进阶教程目录 下载插件 打开Datatables官网(https://datatables.net/download/) 勾选Extensions/Buttons,下载插件,复制到JD ...

  4. 【LeetCode】70. 爬楼梯

    爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意: 给定 n 是一个正整数. 示例 1: 输入: 2 输出: 2 解 ...

  5. win10查看桌面壁纸路径

    如题,win10查看自己壁纸的缓存路径,就是找到壁纸的原图:在explorer里输入 %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes 1 ...

  6. prometheus数据可视化

    一.prometheus自带简单的web可视化页面: http://192.168.1.28:9090/graph 二.grafana是一套开源的分析监视平台,支持prometheus等数据源:UI非 ...

  7. VMWare虚拟机提示:锁定文件失败,打不开磁盘...模块"Disk"启动失败的解决办法

    我出现该问题的原因: 昨天电脑一下子卡死,于是我就重启了电脑,重启之后我没有打开VMware虚拟机,结果第二天一上班打开VMware就发现出现了“锁定文件失败,打不开磁盘......模块"D ...

  8. CCF模拟题-201909

    2.小明种苹果(续)(100分) #include<iostream> #include<cstdio> #include<cstring> #define max ...

  9. 重构 改善既有代码的设计 (Martin Fowler 著)

    第1章 重构, 第一个案例 1.1 起点 1.2 重构的第一步 1.3 分解并重组 statement() 1.4 运用多态取代与价格相关的条件逻辑 1.5 结语 第2章 重构原则 2.1 何谓重构 ...

  10. 利用数据库视图实现WEB查询敏感信息接口动态脱敏

    前言: 利用数据库视图,实现web接口查询敏感信息时动态脱敏. 具体目标:某接口为用户信息查询接口,返回敏感用户信息(id,姓名.手机号[敏感].身份证号[敏感]),如果web用户为管理员角色,则查询 ...