【容器】docker基础使用
一、image镜像相关命令
以下是一些常用的Docker镜像操作命令:
-
docker pull <image>
:从Docker仓库下载(拉取)一个镜像到本地。 -
docker images
:列出本地已下载的镜像列表。 -
docker rmi <image>
:删除本地的一个镜像。 -
docker run <image>
:运行一个镜像创建的容器。 -
docker build -t <image>:<tag> <Dockerfile路径>
:根据Dockerfile构建一个新的镜像。 -
docker push <image>
:将本地的镜像推送到Docker仓库。 -
docker save <image> -o <输出文件路径>
:将一个镜像保存为一个压缩文件。 -
docker load -i <输入文件路径>
:从一个压缩文件中加载镜像。 -
docker tag <image> <新的标签>
:为一个现有的镜像打标签。 -
docker inspect <image>
:查看一个镜像的详细信息。
二、docker容器常见命令
docker是一个容器化平台。
Docker介绍:(官网:https://www.docker.com/get-started)
Docker 是一个开源的应用容器引擎,你可以把它当作一个轻量级的虚拟机。它可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的操作系统,比如 Linux/Windows/Mac 的机器上。Docker 容器相互之间不会有任何接口,而且容器本身的开销极低,这就让 Docker 成为了非常灵活、安全、伸缩性极强的计算资源平台。
以下是一些常见的 Docker 命令:
1. 镜像相关命令:
docker images
:列出本地的镜像。docker pull <image>
:从 Docker 镜像仓库中下载镜像。docker push <image>
:将本地的镜像推送到镜像仓库。docker rmi <image>
:删除本地的镜像。
2. 容器相关命令:
docker run <image>
:根据镜像创建并启动一个容器。
-
-d
后台运行容器,并返回容器ID,此时不会进入交互界面,如果想要进入交互界面请加-i和-t参数。
如果用了-d参数未进入容器的时候,在想进入容器,指令:docker exec -it 容器名称 /bin/bash; -
-i
-i: 以交互模式运行容器,通常与 -t 同时使用; -
-t
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; -
-P
-P: 随机端口映射,容器内部端口随机映射到主机的端口 -
-p
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口 -
–name
–name=“xxxxx”: 为容器指定一个名称,名字叫xxxxx; -
–dns
–dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致; -
-e
-e username=“ritchie”: 设置环境变量; -
-cpuset
–cpuset=“0-2” or --cpuset=“0,1,2”: 绑定容器到指定CPU运行; -
-m
-m :设置容器使用内存最大值; -
-net
–net=“bridge”: 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型; -
-link
–link=[]: 添加链接到另一个容器; -
-expose
–expose=[]: 开放一个端口或一组端口; -
-v
–volume , -v: 绑定一个卷
注意:-v
参数中,冒号":"前面的目录是宿主机目录,后面的目录是容器内目录。
容器目录不可以为相对路径。
宿主机目录如果不存在,则会自动生成。
docker start <container>
:启动一个已停止的容器。docker stop <container>
:停止一个正在运行的容器。docker restart <container>
:重启一个容器。docker rm <container>
:删除一个容器。docker ps
:列出正在运行的容器。docker ps -a
:列出所有的容器。
3. 日志和输出相关命令:
docker logs <container>
:查看容器的日志。docker exec -it <container> <command>
:在运行的容器中执行命令。
sudo docker exec -it your_container_name python a.py
# 或者直接进入容器后直接python a.py
docker attach <container>
:附加到正在运行的容器的标准输入、输出和错误流。
4. 网络和端口相关命令:
docker network ls
:列出 Docker 网络。docker network create <network>
:创建一个自定义网络。docker port <container>
:查看容器的端口映射。
运行 docker --help
或查阅 Docker 官方文档来获取更详细的命令信息和使用说明。
三、注意事项
- 镜像可视为软件包(包括程序运行所需的代码、环境、库文件、系统工具等)
- 下载镜像后可以创建容器,容器是镜像的实例,容器可以被启动、停止、删除和管理,类似一个隔离的进程
- 容器状态可修改,如向容器加入文件、修改配置等
- 如果需要将修改后的容器保存下来,可以通过docker提供的镜像构建命令转为一个新的镜像
- 在docker中下载
vim
:apt-get update && apt-get install -y vim
Reference
[1] docker官方文档:https://docs.docker.com/engine/reference/run/
[2] docker镜像的制作、导入和导出
[3] 如何使用 Docker 部署容器
[4] 通过pycharm登录远程服务器上的docker的完整过程
[5] 基本 Docker 命令.Microsoft文档
[6] Docker命令及参数详解