千家信息网

archlinux中的第一个容器该怎么创建

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,archlinux中的第一个容器该怎么创建,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.运行以下命令创建我们的第一个
千家信息网最后更新 2026年10月31日archlinux中的第一个容器该怎么创建

archlinux中的第一个容器该怎么创建,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1.运行以下命令创建我们的第一个容器

sudo docker run -i -t base/archlinux /bin/bash#如果需要使用ubuntu镜像sudo docker run -i -t ubuntu /bin/bash#如果需要使用centOS镜像sudo docker run -i -t centos /bin/bash#如果需要使用centOS7镜像sudo docker pull openshift/base-centos7 /bin/bash

不过有可能出现如下异常,出现该异常可以试着更换一下源,或者试一下通过docker pull来先把镜像拉取到本地。

若无异常,则进入我们的第一个容器

命令中的-i保证容器中STDIN开启,-t标志则是让docker为创建容器分配一个伪tty终端。这两个参数是创建交互式容器最基本的参数。如若没有这两个参数,创建的是一个运行于后台的容器。

命令中的/bin/bash则是告诉docker成功过创建一个新的容器后,启动一个bash shell。

其中的archlinux、centos等Linux发行版字样则是告知docker基于什么镜像来创建容器。其他镜像可以到docker下载你需要的镜像,如下图,找到你需要的镜像,右侧的Docker Pull Command栏会跟你说对应的镜像拉取命令。

可以通过先拉取镜像到本地,执行上面的docker run命令如果检测到本地的镜像,docker则不再到Docker Hub Registry查看是否有对应的镜像,如果本地无对应的镜像,则到Docker Hub Registry中查看,如果查找到,则下载到本地:

#拉取archlinux镜像sudo docker pull base/archlinux

2.现在来使用我们刚刚创建好的第一个容器

在使用容器之前我们先来熟悉几个常用的命令。

#查看目前有几个容器,多少个暂停,多少个停止,多少个正在运行[bysu@subaoya ~]$ sudo docker info#######下面就是运行后的一部分结果############Containers: 1Running: 0Paused: 0Stopped: 1Images: 1########################################[bysu@subaoya ~]$ sudo docker ps  #查看正在运行的容器CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              d092d144e887        base/archlinux      "/bin/bash"         35 minutes ago      Up 12 minutes  PORTS               NAMES                    sad_rosalind[bysu@subaoya ~]$ sudo docker ps -a   #查看所有状态的容器CONTAINER ID   IMAGE           COMMAND       CREATED        STATUS    PORTS     NAMES2552cacc1928   base/archlinux  "/bin/bash"   33 seconds     Exite d26 seconds   ecstatic_galileod092d144e887   base/archlinux  "/bin/bash"   35 minutes ago Up 12 minutes       sad_rosalind[bysu@subaoya ~]$ sudo docker ps -a|grep Up|awk '{print $1}'   #查看正在运行的容器名d092d144e887#查看所有容器的名字sudo docker ps -a -q#######下面就是运行结果############bfacc5ccb74da56a719eb52a0fc9b2bc3e84#删除不在运行的所有容器sudo docker rm $(sudo docker ps -a -q)#######下面就是运行结果############bfacc5ccb74d0fc9b2bc3e84Error response from daemon: You cannot remove a running container a56a719eb52ae8bb3ecbe22bc1b029f203206b0f7144e74992038bb76c56b6ea. Stop the container before attempting removal or force remove#停止一个正在运行的容器sudo docker stop a56a719eb52a#######下面就是运行结果############a56a719eb52a

通过前面的方式创建容器时,可以给容器命名。如果创建时不指定名字,则会随机生成容器名字。

sudo docker run --name my_first_container -i -t base/archlinux /bin/bash

一般地,上述创建容器成功,也直接进入容器,我第一时间想到的是exit(不知道有没其他命令切出容器,如果需要用到的,自行搜索引擎),如此这般之后,就有可能出现刚刚切出的容器已经停止运行。这会导致你后续如果想通过docker exec -it my_first_container bash 或者sudo docker attach my_first_container再次进入容器 my_first_container,会出现异常,需要先通过命令sudo docker start my_first_container,重新启动该容器。以上命令中容器名可以用容器ID替换。

查看主机名

hostname

查看网络接口

ifconfig

ifconfig命令不存在的问题,参考

安装其他软件跟archlinux中是一样的。

3.创建守护式容器

守护式容器可以长期运行,没有交互式会话,一般用于作为运行应用程序和服务的载体。其创建命令如下:

sudo docker run --name my_daemon -d base/archlinux /bin/sh -c "while true;do echo hello docker;sleep 1;done"

上述命令中,-d参数告知docker将容器放后台运行。

由于上面创建的容器放在后台,我们作为容器的"创世者",它是死是活我们多少总有点关心的。

sudo docker ps -a

通过status字段,得知它还活着。竟然得知还活着,那自然而然又想知道ta过得好不好--有没在正常工作了。可以通过查看日志,得知ta的近况如何。

sudo docker logs my_daemon

实时查看日志可以使用下列命令。

sudo docker logs -f my_daemon#实时查看最新日志sudo docker logs --tail 0 -f my_daemon#实时查看最新日志,加上-t标志为每条日志项加上时间戳,方便调试sudo docker logs --tail 0 -ft my_daemon

退出请Ctrl+c,用过Linux的应该都知道。

[bysu@subaoya ~]$ sudo docker attach my_daemon
hello docker
hello docker

....

上面标红的代码执行后,无法通过Ctrl+c退出容器。无奈的我只能把xshell给X掉重连。有知道怎么关掉的麻烦告知一下(也许是无法关闭)。

4.Docker日志驱动

执行docker run命令时通过--log-driver选项来实现。如果通过该选项指定syslog,将容器的所有日志输出重定向到syslog,则会同时禁用docker logs命令,具体命令如下:

sudo docker run --name my_log_daemon --log-driver="syslog">

如果要禁用容器所有的日志,则可用选项none,该选项同样会禁用docker logs命令。

5.查看容器内的进行

使用sudo docker top my_first_container可以查看容器内的进程

6.Docker统计信息

可以通过docker stats命令,动态查看多个容器的CPU,内存,网速,IO,这能快速监控一台主机上的一组容器。

7.在容器内部运行进程

通过docker exec命令在容器内部额外启动新进程。在容器内可以运行的进程有两种类型:后台任务和交互式任务。

容器中运行后台任务

sudo docker exec -d my_first_container touch /etc/createFile

容器中运行交互命令

sudo docker exec -t -i my_first_container /bin/bash

如果容器在创建时就是交互式的,可以直接sudo docker attach命令附到原本的容器上,效果等同上面这条命令。

8.停止守护式容器

sudo docker stop 容器名/容器ID

9.自动重启容器

可通过--restart标志让docker自动重启容器。--restart标志会检查容器退出的代码,并据此来决定是否要重启容器。Docker默认不会重启容器。

总是自动重启容器的命令

sudo docker run --restart=always --name my_daemon -d base/archlinux /bin/sh -c "while true;do echo hello docker;sleep 60;done"

--restart标志被设置为always,无论容器退出的代码是什么,Docker都会自动重启该容器。

如果--restart标志被设置为on-failure,则只有容器退出的代码为非0值时,才会自动重启。同时还可以设置一个可选参数,标志重启次数。

sudo docker run --restart=on-failure:5 --name my_daemon -d base/archlinux /bin/sh -c "while true;do echo hello docker;sleep 60;done"

当该容器退出代码为非0时,Docker会尝试最多5次的重启。

10.深入容器

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

容器 命令 运行 镜像 日志 标志 代码 参数 后台 就是 交互式 正在 结果 进程 任务 可以通过 名字 实时 两个 主机 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广东猪兼强互联网科技有限公司 互联网未来科技 互联网金融科技创新 融势互联网科技 唐信互联网科技 大连 互联网科技logo 广州优美互联网科技 互联网教育科技公司vipkid 以后互联网后是啥科技 顶级互联网科技成果有哪些 消费医药和互联网科技 链环科技传统企业怎么转型互联网 互联网科技人工智能实验室 特约风豹互联网科技为什么扣费 广东工业互联网大赛深圳学泰科技 深圳无忧互联网科技 科技互联网行业投资研究 北京天晋互联网科技有限公司 科技互联网专业工作会议发言稿 科技互联网企业在行动 A股互联网金融科技公司 互联网医疗科技 互联网科技公司发展 现代互联网科技股 昭通互联网科技选哪家 黑科技闪耀互联网之光 花神(南京)互联网科技有限公司 东莞新华互联网科技学校 四川慕妮娅互联网科技有限公司 四川互联网展示科技馆设计
0