转载自:Docker入门教程(二)命令

可参考:Docker常用命令


本文中,我们将学习15个Docker命令以及命令的用法和功能,并通过实践学习它是如何工作的。

首先,让我们通过下面的命令来检查Docker的安装是否正确:

1
docker info 

如果没有找到此命令,则表示Docker没有正确安装。如果正确安装会输出类似下面的内容:

到这一步Docker里还没有镜像或是容器。所以,让我们通过命令来拉取一个预建的镜像:

1
sudo docker pull busybox 

BusyBox是一个最小的Linux系统,它提供了主要的功能,不包含一些与GNU相关的功能和选项。

下一步我们将运行一个Hello World的例子,我们暂且叫它“Hello Docker”吧。

1
docker run busybox /bin/echo Hello Docker 

现在,让我们以后台进程的方式运行hello docker:

1
sample_job=$(docker run -d busybox /bin/sh -c "while true; do echo Docker; sleep 1; done") 

sample_job命令会隔一秒打印一次Docker,使用Docker logs可以查看输出。如果没有起名字,那这个job会被分配一个id,以后使用命令例如Docker logs查看日志会变得比较麻烦。

运行Docker logs命令来查看job的当前状态:

1
docker logs $sample_job 

所有Docker命令可以用以下命令查看:

1
docker help 

名为sample_job的容器,可以使用以下命令来停止:

1
docker stop $sample_job 

使用以下命令重新启动该容器:

1
docker restart $sample_job 

如果要完全移除容器,需要将该容器停止,然后才能移除。像这样:

1
docker stop $sample_job docker rm $sample_job 

将容器的状态保存为镜像,使用命令:

1
docker commit $sample_job job1 

注意,镜像名称只能取字符[a-z]和数字[0-9]。

现在,你就可以使用以下命令查看所有镜像的列表:

1
docker images 

在我们之前的Docker教程中,我们学习过镜像是存储在Docker registry。在registry中的镜像可以使用以下命令查找到:

1
docker search <image-name> 

查看镜像的历史版本可以执行以下命令:

1
docker history <image_name> 

***,使用以下命令将镜像推送到registry:

1
docker push <image_name> 

你必须要知道库名字是不是根库,它应该使用此格式

1
<user>/<repo_name>。