15 个 Docker 初学者必须掌握的命令

Docker

这篇文章我基本上不会做 put 操作。如果你认为这些命令缺少了什么其他方面重要的东西,那么你需要自行检查 Docker 文档(https://docs.docker.com/)

pull

pull 命令和 git pull 基本上是类似的。可以将 Docker hub 存储的镜像拉取到本地。

$ docker pull kojikno/conda_docker

push

push 命令也与 git push 命令相同。该命令可以你自己本地的 Docker 镜像推送到 Docker Hub。这样你的镜像可以被其他人随意使用,或者你可以在任何机器使用该镜像。举个栗子,你可以将镜像用于 CI。我现在就在使用自己的 Circle CI 镜像做测试。
我们可以拥有一个自己的免费的私有仓库。这样你就可以确保你的镜像的安全。在下面内容中:python3.7 是一个 tag。通常,一个社区组织可以提供多个版本的镜像。
比如,node:latest,node:11,node:10 等等。

$ docker push kojikno/conda_docker:python3.7

build

该命令是用来从 Dockerfile 创建一个镜像。你可以从下面的文章中了解到什么是 Dockerfile。
https://dev.to/kojikanao/learning-docker-0...

ml_conda_docker 是一个镜像的名称 & tag。

$ docker build -t ml_conda_docker:latest .

images

该命令可以显示你本地拥有的镜像。我想我已经使用这些命令都滚瓜烂熟了吧。哈哈\

$ docker images

REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
arm64v8/ubuntu              latest              56c6cce7dd32        7 days ago          57.7MB
circleci/picard             latest              7d0931871af3        2 weeks ago         103MB
arm64v8/node                10.16.0-stretch     3583429b1ae9        3 weeks ago         853MB
rwmodel/runway/densedepth   cpu                 186943877dd5        8 weeks ago         1.85GB

rmi

该命令可以删除一个镜像。有时镜像是特别巨大的,这时候我就需要删除一些镜像,特别是当从基于 Docker Hub 镜像的容器创建镜像时。

$ docker rmi image_id/image_name

$ docker rmi $(docker images -q --filter "dangling=true") <-- remove images which is named none

create

该命令用于创建一个容器,但是不启动容器。

$ docker create image_name

run

该命令用户运行一个容器或者启动一个容器。
你应该再仔细的阅读以下关于该操作的知识。
https://docs.docker.com/engine/reference/r...\
你也可以从我的关于容器的文章中获取这方面知识(https://dev.to/kojikanao/learning-docker-0...)\

$ docker run -it image_name/image_id bash

ps

ps 绝对是你使用 Docker 时最好的帮手。
该命令可以显示你正在运行的容器信息。如果你还想查看其他已经停止的容器的信息,那么你可以在后面添加 -a

$ docker ps

$ docker ps -a

commit

该命令可以从容器创建一个镜像。我们可以拉取一个镜像并且添加或安装一些其他我们需要的东西,然后运行commit。稍等片刻,我们可以开始 run/create 一个我们已经 committed 的镜像的容器。
你应该先明确一些事,那就是commit可以从我们拉取的镜像中创建一个新镜像,并且新镜像的大小或许会大于我们的基础镜像。因此,如果你的计算机上没有足够的存储空间,那么得注意一下你的硬盘剩余的存储容量。

$ docker commit container_id iamge_name:tag

start

该命令用于运行一个容器。

$ docker start container_id/container_name

stop

该命令用于停止一个正在运行的容器。

$ docker stop container_id/container_name

exit

如果你在 Docker 容器内,那么你可以使用exit退出。

$ exit

attach

该命令将本地标准输入、输出以及错误流附加到正在运行的容器。

$ docker attach container_id/container_name

rm

当容器不再运行时可以使用该命令来删除容器。如果有多个 container_ids,那么则可以删除多个容器。

$ docker rm container_id/container_name

# 该命令可以移除所有已经退出容器。
$ docker rm $(docker ps -qa --no-trunc --filter "status=exited")

system prune

该命令可以移除未使用的数据。
如果你真的想清理 Docker 环境,你可以使用-a操作。但是此操作将删除所有未使用的数据,因此使用务必要注意。

$ docker system prune OPTIONS

exec

该命令可以让我们在正在运行的容器中执行另一个进程。

$ docker exec option container_id/container_name

实际上,你可以使用或者应该知道更多命令,但是我想对于我这样的初学者来说,这些命令足以了解 Docker 的基础知识。

希望这对大家有用!

如果有其他错误或者我遗漏了重要的信息,请给我提交评论!!!(我还是个 Docker 小白呢 😆)

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://dev.to/kojikanao/15-docker-comma...

译文地址:https://learnku.com/server/t/36931

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!