前言
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。下面是一些常用的 Docker 命令总结
Docker 安装与服务管理
在开始使用 Docker 之前,确保 Docker 已经安装在您的系统上。安装完成后,您可以使用以下命令来管理 Docker 服务:
- 启动 Docker 服务:
systemctl start docker
- 重启 Docker 服务:
systemctl restart docker
- 停止 Docker 服务:
systemctl stop docker
- 查看 Docker 服务状态:
systemctl status docker
- 设置 Docker 开机启动:
systemctl enable docker
Docker 镜像管理
镜像是 Docker 的核心概念之一,它是用来创建 Docker 容器的基础。您可以使用以下命令来管理 Docker 镜像:
- 列出所有镜像:
docker images
- 删除特定镜像:
docker rmi 镜像ID
- 搜索 Docker Hub 上的镜像:
docker search 关键词
- 从 Docker Hub 下载镜像:
docker pull 镜像名[:标签]
- 导出镜像到 tar 文件:
docker save -o [目标文件名][镜像名]
- 从 tar 文件导入镜像:
docker load -i 镜像文件
Docker 容器操作
容器是镜像的一个运行实例,您可以启动、停止、移动或删除它们。以下是几个常用的容器操作命令:
- 列出所有正在运行的容器:
docker ps
- 列出所有容器(包括已停止的):
docker ps -a
- 创建并启动一个容器:
docker run -id --name=容器名 镜像名
- 进入一个正在运行的容器:
docker exec -it 容器名 bash
- 查看容器详细信息:
docker inspect 容器名或容器ID
- 查看容器日志:
docker logs -f 容器名
- 停止容器:
docker stop 容器名
- 启动已停止的容器:
docker start 容器名
- 删除容器:
docker rm -f 容器名
Docker 数据卷管理
数据卷是在一个或多个容器间共享和持久化的存储区域。数据卷独立于容器的生命周期,因此即使容器被删除,数据卷中的数据仍然存在。
- 创建数据卷:
docker volume create 卷名
- 列出所有数据卷:
docker volume ls
- 查看数据卷详细信息:
docker volume inspect 卷名
- 删除数据卷:
docker volume rm 卷名
- 删除所有未使用的数据卷:
docker volume prune
Dockerfile 和 Docker Compose
Dockerfile
Dockerfile 是一个文本文件,其中包含了一系列命令,用户可以调用
docker build
命令来创建一个新的镜像。下面是一个简单的 Dockerfile 示例:
FROM java:8-alpine
COPY ./docker-demo.jar /tmp/app.jar
EXPOSE 8090
ENTRYPOINT ["java", "-jar", "/tmp/app.jar"]
- 基于 Dockerfile 构建镜像:
docker build -t 镜像名:标签 .
Docker Compose
Docker Compose 允许您使用 YAML 文件定义和运行多容器 Docker 应用程序。使用单个
docker-compose.yml
文件来配置应用程序的服务。然后,使用一个命令就可以创建和启动所有服务。
- 启动 Docker Compose 项目:
docker-compose up -d
- 查看 Docker Compose 日志:
docker-compose logs -f 服务名
- 重启 Docker Compose 服务:
docker-compose restart 服务名
私有仓库操作
如果您需要在私有仓库中管理镜像,可以使用以下命令:
- 给本地镜像打标签:
docker tag 镜像名:标签 私有仓库地址/镜像名:标签
- 推送到私有仓库:
docker push 私有仓库地址/镜像名:标签
- 从私有仓库拉取镜像:
docker pull 私有仓库地址/镜像名:标签
教程文档PDF版(蓝奏云下载地址)直接下载永久保存,不限速,方便随时查阅
资源预览:
版权归原作者 李少兄 所有, 如有侵权,请联系我们删除。