docker基本命令的使用

01. 使用容器运行Hello World

使用命令行运行以下命令,此命令将启动一个ubuntu的容器并在其中输出 Hello World文本,执行完毕后,容器自动退出。

02. 与容器进行交互

使用命令行运行以下命令,此命令将启动一个ubuntu容器并在其中运行bash交互命令行界面,你可以尝试运行pwd,ls,ps等命令查看容器内环境,就如同远程操作一台服务器一样。

03. 在容器中运行持续任务并管理容器生命周期

使用命令行运行以下命令,此命令将启动一个ubuntu容器并在其中持续运行echo hello world,启动后容器会持续输出hello world文本。

注意当你运行以上命令后,命令行直接退出并没有持续输出hello world文本,这是因为我们使用了-d参数,这时容器在后台运行,你可以通过docker logs命令获取容器内的日志输出,注意替换c3a2为你的容器ID的前四位,如下:

为了查看当前正在运行状态的容器,你可以使用docker ps命令,如下:

你也可以查看到那些没有在运行状态的容器,使用docker ps -a命令,如下:

注意以上出了第一个容器正在运行意外,另外2个ubuntu容器都已经停止,但是容器仍然存在。你可以理解为他们是没有被运行中的应用,而应用的文件存在于你的docker环境中。

现在,你可以通过docker stop {id}命令来停止正在运行的容器,如下:

然后,通过docker rm {id}命令来删除所有未运行的容器,(注意将id替换成你自己的容器ID的前四位)如下:

也可以通过这个命令自动枚举所有容器并停止,删除:

04. 运行web应用并通过浏览器访问

使用命令行运行以下命令

完成后打开浏览器并导航到 http://localhost:8080,你应该可以看到类似以下页面

注意以上命令与之前的最大区别在于使用了-p参数来映射网络端口,这样我们就可以通过容器主机的8080端口来访问容器的80端口,类似于实现了一个简单的NAT。你也可以使用-P(大写)参数来让docker自动分配主机端口,这样可以避免我们手动分配端口造成冲突。

你可以尝试使用以上实验中的docker logs和docker ps等命令查看此正在运行容器的状态和其中的web服务器所输出的日志,如下

运行以下命令式请注意替换dda5为你自己的容器id,同时可以尝试刷新浏览器看到日志的实时输出

另外,你还可以使用docker top {id}命令查看容器中的进程列表

或者通过 docker exec 命令直接进入容器进行操作

小结

至此,你应该已经基本掌握了运行容器的主要命令,下一节中,我们将尝试完成一个新的容器镜像的构建并运行我们自己构建的容器镜像。

0

发表评论

您的电子邮箱地址不会被公开。