Docker
yuhuo2024-04-05开发必备工具应用
参考链接
一. 安装
# yum-utils:提供 yum-config-manager 工具
# device-mapper-persistent-data:linux存储驱动
# lvm2:创建逻辑磁盘分区
yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加docker镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装docker-ce(docker的社区免费版)
yum install docker-ce docker-compose-plugin -y
# 启动docker
systemctl start docker
# 设置开机自启动
systemctl enable docker
# 查看docker和docker-compose版本,验证是否成功安装
docker -v
docker compose version
# 查看docker版本详细信息
docker version
docker info
二. 常用命令
镜像管理
docker image ls:查看镜像列表docker image pull <镜像id|镜像名>:从远程仓库下载镜像docker image rm <镜像id|镜像名>:删除镜像docker image build -t <新镜像名> <Dockerfile所在目录>:根据 Dockerfile 文件构建镜像docker image save -o <导出文件路径.tar> <镜像id|镜像名>:将镜像导出成 tar 文件docker image load -i <导入文件路径.tar>:将 tar 文件导入成镜像(镜像名是导出前的镜像名,与 tar 文件名无关)docker image push <镜像id|镜像名>:推送本地镜像到远程仓库
简便写法
| 原名 | 别名 |
|---|---|
docker image ls | docker images |
docker image <命令> | docker <命令> |
容器管理
docker container ls:查看容器列表-a:展示所有容器(默认只展示运行中的)
docker container create <选项> <镜像id|镜像名>:根据本地镜像创建容器-p <容器端口>:<主机端口>:指定端口映射--name <容器名>:指定容器名
docker container start <容器id|容器名>:启动容器,后台运行docker container run <选项> <镜像id|镜像名>:创建容器并启动(相当于 create + start,本地镜像不存在会自动从远程仓库下载)-d:后台运行(默认前台运行)--rm:关闭容器后自动删除
docker container stop <容器id|容器名>:安全关闭容器docker container kill <容器id|容器名>:立即关闭容器docker container restart <容器id|容器名>:重启容器docker container rename <旧容器名> <新容器名>:容器重命名docker container commit <容器id|容器名> <新镜像名:版本>:容器修改后,保存成一个新镜像-a <作者信息>-m <提交信息>
docker container rm <容器id|容器名>:删除容器
简便写法
| 原名 | 别名 |
|---|---|
docker container ls | docker ps |
docker container <命令> | docker <命令> |
容器修改
docker exec -it <容器id|容器名> /bin/bash:分配一个伪终端进入容器内(基本都是Linux系统)# 查看容器内系统发行版(比如nginx镜像使用的是Debian) cat /etc/issue # 更新软件包信息 apt update # 安装vim apt install vim # 进行一些操作,比如修改nginx配置文件 # 退出容器 exitdocker cp <主机目录> <容器id|容器名>:<容器内目录>:将主机文件拷贝到容器内部- 示范:
docker cp /data/www mynginx:/data/www
- 示范:
docker commit:将容器保存成新镜像(用法参考上节)
三. Dockerfile
# 基于nginx的镜像
FROM nginx
# 将项目中的文件复制到镜像中
COPY dist/ /usr/share/nginx/html/
COPY default.conf /etc/nginx/conf.d/default.conf
四. Docker Compose
docker-compose up:启动容器集群-d:后台运行
