ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

【云原生系列4】Docker常用命令

【云原生系列4】Docker常用命令 Docker常用命令分为镜像、容器、网络、数据卷、系统信息、清理#创建并启动容器 docker run -d \ #--detach后台守护进程运行,日志用 docker logs cv-gateway 查看 --name cv-gateway \ # 容器名称 --network cvnetwork \ #将容器接入 Docker 自定义网桥 cvnetwork -p 17806:17806 \ #端口映射宿主机端口:容器内端口 -v ./SettingConfig.xml:/app/SettingConfig.xml \#挂载文件volume 绑定挂载宿主机当前目录./SettingConfig.xml → 映射到容器内 /app/SettingConfig.xml容器内程序读取这个 xml宿主机修改 xml重启容器生效 #容器日志驱动防止容器日志无限膨胀打满磁盘 --log-opt max-size10m #单个日志文件最大大小 --log-opt max-file3 #最多保留几个日志文件 cv-gateway:latest #镜像名 标签使用 cv-gateway 镜像latest 最新标签镜像# 拉取镜像 docker pull mysql:8.0 # 查看本地所有镜像 docker images # 删除镜像镜像ID/名字 docker rmi mysql:8.0 # 强制删除 docker rmi -f 镜像ID # 构建镜像Dockerfile docker build -t myapp:1.0 . # 给镜像打标签 docker tag myapp:1.0 registry.example.com/myapp:1.0 # 导出镜像离线备份 docker save -o myapp.tar myapp:1.0 # 导入镜像 docker load -i myapp.tar容器 container# 查看正在运行容器 docker ps # 查看全部含停止的 docker ps -a # 启动一次性容器前台 docker run --rm -it mysql:8.0 bash # -d 后台运行--name 指定容器名-p端口映射-e环境变量-v挂载--network网络 docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD123456 -v mysql-data:/var/lib/mysql --network app-net mysql:8.0 # 停止容器 docker stop 容器名/容器ID # 启动已停止容器 docker start 容器名 # 重启 docker restart 容器名 # 删除容器必须先stop docker rm 容器名 # 强制删除运行中的容器 docker rm -f 容器名 # 进入容器交互式终端 docker exec -it 容器名 bash # 实时日志 docker logs -f --tail 200 容器名 # 查看容器详细信息IP、挂载、环境变量排错神器 docker inspect 容器名网络 network# 列出所有docker网络 docker network ls # 创建自定义bridge网桥 docker network create app-net # 查看网络详情接入容器、网段 docker network inspect app-net # 将已有容器加入某个网络 docker network connect app-net 容器名 # 断开容器网络 docker network disconnect app-net 容器名 # 删除网络网络里不能还有容器 docker network rm app-net数据卷 volume# 列出卷 docker volume ls # 创建命名卷 docker volume create mysql-data # 查看卷详情宿主机真实路径 docker volume inspect mysql-data # 删除卷 docker volume rm mysql-data系统信息# docker版本 docker --version # 查看docker引擎信息 docker info # 查看磁盘占用镜像/容器/卷大小 docker system df清理命令# 删除停止的容器、无用镜像、无用网络保留卷 docker system prune # 彻底清理同时删除未使用的数据卷风险高 docker system prune -a --volumes # 清理悬空镜像none docker image pruneDocker环境Docker CECommunity Edition Docker Compose v2 国内镜像加速 日志限制#!/bin/bash # CentOS7 单机Docker安装脚本 # 1. 卸载旧版本 yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine # 2. 安装依赖 yum install -y yum-utils device-mapper-persistent-data lvm2 # 3. 添加阿里docker源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum makecache fast # 4. 安装docker-ce yum install -y docker-ce docker-ce-cli containerd.io # 5. 配置daemon.json 镜像加速日志限制 cat /etc/docker/daemon.json EOF { registry-mirrors: [ https://docker.mirrors.ustc.edu.cn, https://hub-mirror.c.163.com, https://mirror.baidubce.com ], log-driver: json-file, log-opts: { max-size: 100m, max-file: 3 }, data-root: /var/lib/docker } EOF # 6. 启动并开机自启 systemctl daemon-reload systemctl start docker systemctl enable docker # 7. 安装docker-compose v2二进制 curl -L https://mirror.ghproxy.com/https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose chmod x /usr/local/bin/docker-compose # 安装 compose-plugin (V2) 插件版 # yum install docker-compose-plugin -y # 8. 当前用户加入docker组免sudo usermod -aG docker $USER echo 安装完成 docker --version docker compose version echo 提示用户加入docker组需要重新登录服务器才能生效
返回列表