在CentOS上使用Docker
设置仓库
- 在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 仓库。之后,您可以从仓库安装和更新 Docker。
- 安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
- 设置完之后,根据需求指定稳定的仓库地址(建议使用国内源)
# 官方源地址
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 国内源地址
# 阿里云
$ sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 清华大学源
$ sudo yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
安装
# 按安装最新版docker
$ sudo yum install docker-ce docker-ce-cli containerd.io
启动docker
# 启动 Docker (启动守护进程)
$ sudo systemctl start docker
查看容器
$ docker ps
# or 查看所有
$ docker ps -a
启动一个容器
$ docker start <CONTAINER ID>
停止一个容器
$ docker stop <CONTAINER ID>
重启一个容器
$ docker restart <CONTAINER ID>
进入容器
# 退出时容器停止
$ docker attach <CONTAINER ID>
# 退出时容器不停止(推荐)
$ docker exec <CONTAINER ID>
退出容器
$ exit
卸载 docker
$ yum remove docker-ce
$ rm -rf /var/lib/docker
使用docker安装nginx
$ docker search nginx
- 拉取nginx镜像到本地,使用第一个默认的’nginx’
$ docker pull nginx
$ docker images nginx
- 创建并启动nginx容器
- -d 指定容器以守护进程方式在后台运行
- –name 指定容器名称,此处我指定的是docker_nginx
- -p 指定主机与容器内部的端口号映射关系,格式 -p
[宿主机端口号]:[容器内部端口],此处使用主机80端口,映射容器80端口
- 1276 是nginx的镜像IMAGE ID前4位
$ docker run -d --name docker_nginx -p 80:80 1276
$ docker ps
修改nginx的配置文件
- 1、每次都进入到nginx容器内部修改
- 2、将nginx容器内部配置文件挂载到主机