Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 部署后Docker容器未运行的问题_Linux_Docker_Ubuntu_Containers_Docker Run - Fatal编程技术网

Linux 部署后Docker容器未运行的问题

Linux 部署后Docker容器未运行的问题,linux,docker,ubuntu,containers,docker-run,Linux,Docker,Ubuntu,Containers,Docker Run,在一个接一个的步骤下面,没有一个传递错误输出,但即使容器在执行这些步骤后没有运行: 1。创建无错误的容器 ~$ sudo docker container run -d -p 81:22 --name test3 ubuntu 866a390866d1aed2d4e550ba6ec6bed1742093c179612758aa291cdc17e01dcb ~$ sudo docker container ls CONTAINER ID IMAGE C

在一个接一个的步骤下面,没有一个传递错误输出,但即使容器在执行这些步骤后没有运行:

1。创建无错误的容器

~$ sudo docker container run -d -p 81:22 --name test3 ubuntu
866a390866d1aed2d4e550ba6ec6bed1742093c179612758aa291cdc17e01dcb
~$ sudo docker container ls

CONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS              PORTS                NAMES
fe68bc38a7f9        nginx               "nginx -g 'daemon of…"   About a minute ago   Up About a minute   0.0.0.0:80->80/tcp   test2
~$ sudo docker container ls

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
fe68bc38a7f9        nginx               "nginx -g 'daemon of…"   2 minutes ago       Up 2 minutes        0.0.0.0:80->80/tcp   test2
2。未从运行的容器中列出

~$ sudo docker container run -d -p 81:22 --name test3 ubuntu
866a390866d1aed2d4e550ba6ec6bed1742093c179612758aa291cdc17e01dcb
~$ sudo docker container ls

CONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS              PORTS                NAMES
fe68bc38a7f9        nginx               "nginx -g 'daemon of…"   About a minute ago   Up About a minute   0.0.0.0:80->80/tcp   test2
~$ sudo docker container ls

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
fe68bc38a7f9        nginx               "nginx -g 'daemon of…"   2 minutes ago       Up 2 minutes        0.0.0.0:80->80/tcp   test2
3。未从所有容器中列出

~$ sudo docker container ls -a

CONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS                      PORTS                NAMES
866a390866d1        ubuntu              "/bin/bash"              27 seconds ago       Exited (0) 25 seconds ago                        test3
4。强制启动具有正输出的容器

~$ sudo docker start 866

866
5。在列出容器后仍不显示为正在运行

~$ sudo docker container run -d -p 81:22 --name test3 ubuntu
866a390866d1aed2d4e550ba6ec6bed1742093c179612758aa291cdc17e01dcb
~$ sudo docker container ls

CONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS              PORTS                NAMES
fe68bc38a7f9        nginx               "nginx -g 'daemon of…"   About a minute ago   Up About a minute   0.0.0.0:80->80/tcp   test2
~$ sudo docker container ls

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
fe68bc38a7f9        nginx               "nginx -g 'daemon of…"   2 minutes ago       Up 2 minutes        0.0.0.0:80->80/tcp   test2
在这个问题上的任何帮助都将受到社区的欢迎


有关主机操作系统和Docker版本的更多详细信息

主机操作系统

Linux master 4.4.0-142-generic #168-Ubuntu SMP Wed Jan 16 21:00:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
~$sudo码头工人信息

[sudo] password for master:
Containers: 3
 Running: 1
 Paused: 0
 Stopped: 2
Images: 5
Server Version: 18.06.1-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-142-generic
Operating System: Ubuntu 16.04.6 LTS
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.748GiB
Name: master
ID: ZRU3:Y5V2:Q2GK:AYC4:N3BX:6ADV:6BUU:47PJ:DXFC:L2MY:UVQP:TEKP
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

警告:不支持交换限制。好吧,这不是一个错误。
ubuntu:latest
默认命令是
/bin/bash
(),所以当容器启动时,它会等待您的输入。但是,由于您在分离模式下运行它,它无法接收输入并自行关闭

从您的问题来看,不清楚您希望这个容器做什么。但您可以通过以下方式以交互模式运行:

sudo docker container run -ti -p 81:22 --name test3 ubuntu

嗨,维塔利,听你的话,我将解释这个Linux容器需要什么:1。构建一个需要Linux服务器容器的项目。2.Linux容器将与数据库和其他服务器交互,因此它需要全天候运行,通过交互式外壳/终端执行其操作和访问,以配置所需的任何内容。3.问题?这个命令将允许继续运行容器,或者一旦我退出-ti/交互式shell将终止它?我希望这澄清了构建这个Linux容器的目的!3.是,它将根据1和2停止容器。所有docker社区都建议将容器视为单个进程。在您的情况下,似乎需要处理多个容器。例如,对于1,您需要一个包含所有构建依赖项的容器,该容器只启动并完成构建过程,之后它必须以某种方式存储构建结果。在第二种情况下,如果我们讨论的是处理shell输入,那么我在初始阶段给出的答案似乎适合您。你甚至可以在每个命令上提升容器,比如
sudocker run ubuntu/bin/bash-c“yourshell命令”
。这将设置容器处理无限循环。您仍然可以通过:
docker exec-ti worker/bin/bash在这个容器上执行命令,甚至调用交互式shell