CentOS7下docker的安装与应用
- yum安装Docker
- 仓库、镜像和容器
- docker使用流程
- 镜像常用命令
- 查看镜像
- 搜索镜像
- 拉取镜像
- 删除镜像
- 配置镜像仓库
- 容器常用命令
- 查看容器列表
- 创建及运行容器
- docker run命令
- docker start/stop/restart
yum安装Docker
查看是否已安装docker
yum list installed | grep docker
安装docker
yum -y install docker
-y表示不询问安装,直到安装成功
查看docker版本
# 简单信息
docker -v
# 查看docker的版本号,包括客户端、服务端、依赖的Go等
docker version
# 查看系统(docker)层面信息,包括管理的images, containers数等
docker info
启动docker
# 启动
systemctl start docker
# 设置开机自启
systemctl enable docker.service
查看docker服务状态
systemctl status docker
仓库、镜像和容器
- 镜像
Docker镜像里包含了已打包的应用程序及其所依赖的环境。类似于Win的程序安装包。
- 镜像仓库
Docker镜像仓库用于存放Docker镜像,以及促进不同人和不同电脑之间共享这些镜像。类似于Win放安装包的仓库。
- 容器
Docker容器通常是一个Linux容器,它基于Docker镜像被创建。一个运行中的容器是一个运行在Docker主机上的进程。类似于Win安装好的程序。
docker使用流程
镜像常用命令
查看镜像
docker images
搜索镜像
docker search 镜像名称
拉取镜像
docker pull 镜像名称:版本号
删除镜像
docker rmi 镜像名称:版本号
配置镜像仓库
vim /etc/docker/daemon.json
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
配置完成后需重启docker服务
systemctl restart docker -- 重启docker服务
systemctl status docker -- 确认docker服务正常运行
容器常用命令
查看容器列表
# 查看正在运行的容器
docker ps
# 查看所有容器
docker ps -a
创建及运行容器
以运行RabbitMQ为例
docker pull rabbitmq:management 下载这个带web管理的镜像
docker运行RabbitMQ
# eg: \ 是换行的意思
docker run -dit --name Myrabbitmq \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
-p 15672:15672 -p 5672:5672 \
rabbitmq:management
15672是管理界面的端口,5672是服务的端口。将管理系统的用户名和密码设置为admin admin。浏览器输入 ip:15672即可访问RabbitMQ的web管理系统。
docker run命令
语法
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
常用参数
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-P: 随机端口映射,容器内部端口随机映射到主机的端口
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-e username="ritchie": 设置环境变量;
--env-file=[]: 从指定文件读入环境变量;
--name="nginx-lb": 为容器指定一个名称;
--volume 或 -v: 绑定一个卷
实例
# 使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx。
docker run --name mynginx -d nginx:latest
# 使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,
# 并将主机的目录 /data 映射到容器的 /data。
docker run -p 80:80 -v /data:/data -d nginx:latest
docker start/stop/restart
- docker start :启动一个或多个已经被停止的容器
- docker stop :停止一个运行中的容器
- docker restart :重启容器
docker start rabbitmq