标签: docker-run

docker run --name vs --hostname作为命令行选项的区别(ping:错误的地址)

1. --name--hostnamedocker run命令有什么区别?

2.为什么foo不能通过barhostname= 到达barhost

创建网络并连接两个容器:

docker network create test
docker run --rm -dit --name bar --network test --hostname barhost alpine:latest
docker run --rm -it --name foo --network test --hostname foohost alpine:latest
Run Code Online (Sandbox Code Playgroud)

barhostfoo终端ping

ping -c2 barhost
Run Code Online (Sandbox Code Playgroud)

给出结果:

错误的地址“ barhost”

但是barfoo

ping -c2 bar
Run Code Online (Sandbox Code Playgroud)

成功:

PING条(172.31.0.2):56个数据字节来自172.31.0.2的64字节:seq = 0 ttl = 64时间= 0.260 ms来自172.31.0.2的64字节:seq = 1 ttl = 64时间= 0.155 ms

--- bar ping统计信息---传输2个数据包,接收2个数据包,0%数据包丢失 …

networking ping command-line-interface docker docker-run

3
推荐指数
1
解决办法
1227
查看次数

Docker只监听80端口

我正在学习 docker,并且正在测试正在运行的容器。仅当我运行在端口 80 上侦听的容器时,它才能正常工作。

\n

例子:

\n

工作正常:

\n
docker run -d --name fastapicontainer_4 -p **8090**:80 fastapitest\ndocker run -d --name fastapicontainer_4 -p **8050**:80 fastapitest\n
Run Code Online (Sandbox Code Playgroud)\n

Don\xc2\xb4t 工作正常: :

\n
docker run -d --name fastapicontainer_4 -p **8050**:**8080** fastapitest\n
Run Code Online (Sandbox Code Playgroud)\n

当我更改程序在容器中侦听的端口并设置一个不同于 80 的端口时,该页面无法工作。有人知道是否可以使用 80 以外的端口?我该怎么做?我正在使用 fastapi。

\n

谢谢,\n吉列尔莫

\n

docker docker-run fastapi

3
推荐指数
1
解决办法
1万
查看次数

有条件地防止容器退出

我在 Dockerfile 中有这个入口点:

ENTRYPOINT ["r2g", "run"]
Run Code Online (Sandbox Code Playgroud)

我用以下命令运行生成的图像:

docker run --name "$container" "$tag"
Run Code Online (Sandbox Code Playgroud)

大多数时候,我希望容器在完成后退出 - r2g 进程不是服务器,而是测试命令行工具。所以我的问题是- 如果我想有条件地阻止容器退出,是否可以传递一个标志来docker run保持容器处于活动状态?我可以向 ENTRYPOINT 添加一些东西来保持容器处于活动状态吗?

docker dockerfile docker-run

2
推荐指数
1
解决办法
1872
查看次数

无法运行 docker 镜像

我在运行 Fedora 31 的新笔记本电脑上安装了 docker 社区。我遵循了此处给出的指南:https : //docs.docker.com/install/linux/docker-ce/fedora/。一切都很好,直到我尝试运行 hello-world 映像或 mysql 映像。我这样做是为了避免每次都使用 sudo ,但仅此而已。

sudo usermod -aG docker $USER
Run Code Online (Sandbox Code Playgroud)

当我使用

docker run hello-world
Run Code Online (Sandbox Code Playgroud)

回报是:

de42c60db0a02e91977cb959b3467aa1bb7ca00fa009a95256615a31c55fe395
docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: 
starting container process caused "process_linux.go:297: applying cgroup configuration for 
process caused \"open /sys/fs/cgroup/docker/cpuset.cpus.effective: no such file or 
directory\"": unknown.
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这个问题?十分感谢 !

fedora docker docker-run

2
推荐指数
1
解决办法
1705
查看次数

包括本地卷名的无效字符。如果您打算传递主机目录,请使用绝对路径

我运行 docker run -v 并且它显示错误为本地卷名中的无效字符。“如果您打算传递主机目录,请使用绝对路径”也打印在终端中。

尝试用 --mount 替换 -v 但在参数上出错

sudo docker build -t="sreedath/tensorflow_1.1.0_py3" .

sudo docker run -p 8888:8888 --name=tensorflow_sreedath_py3 -v home/sreedath/Mytest/LSTM-Sentiment-Analysis:/LSTM-Sentiment-Analysis -it sreedath/tensorflow_1.1.0_py3
Run Code Online (Sandbox Code Playgroud)

所需的输出是在端口 8888 处获取本地主机。但由于错误,本地主机不工作

docker docker-run

1
推荐指数
1
解决办法
5159
查看次数

容器不在分离模式下运行

今天,我尝试以分离模式运行我的容器,但遇到了一些问题。

当我运行命令docker container run -d nginx 时nginx的映像被拉取,并且容器的输出未显示,因为它处于分离模式。

然后我运行命令docker container ls,我们都知道它只显示正在运行的容器,它显示我的 nginx 容器正在运行。 nginx 镜像的镜像

然后我用 ubuntu 镜像尝试了同样的事情,即 docker container run -d ubuntu但是当我运行docker container ls命令时,我的 ubuntu 镜像没有运行,只有 nginx 容器在运行。

ubuntu 图像的图像

为什么会这样?

docker devops docker-run

0
推荐指数
1
解决办法
493
查看次数