我只是使用了一个示例docker compose yml文件创建了一些容器,最终得到了以下结果:
PS C:\Users\jj> docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
70ef2ac09df0 couchdb:latest "tini -- /docker-ent…" 9 seconds ago Up 6 seconds 4369/tcp, 9100/tcp, 0.0.0.0:25984->5984/tcp, 0.0.0.0:25986->5986/tcp jj_server-2_1
4ee92fc98788 couchdb:latest "tini -- /docker-ent…" 9 seconds ago Up 5 seconds 0.0.0.0:5984->5984/tcp, 4369/tcp, 9100/tcp, 0.0.0.0:5986->5986/tcp jj_server-0_1
37c1a3a9be48 couchdb:latest "tini -- /docker-ent…" 9 seconds ago Up 5 seconds 4369/tcp, 9100/tcp, 0.0.0.0:15984->5984/tcp, 0.0.0.0:15986->5986/tcp jj_server-1_1
想了解端口信息。
4369/tcp, 9100/tcp, 0.0.0.0:15984->5984/tcp, 0.0.0.0:15986->5986/tcp jj2_server-1_1
这是我在部分使用的docker-compose.yml中拥有的内容:
server-0:
environment:
COUCHDB_PASSWORD: -pbkdf2-847043acc65626c8eb98da6d78682fbc493a1787,f7b1a3e4b624f4f0bbfe87e96841eda0,10
COUCHDB_SECRET: 0123456789abcdef0123456789abcdef
COUCHDB_USER: couchdb
NODENAME: couchdb-0
image: couchdb:latest
networks:
network:
aliases:
- couchdb-0
ports:
- "5984:5984"
- "5986:5986"
volumes:
- "volume-0:/opt/couchdb/data"
完整的yml文件可以在这里找到:https : //github.com/apache/couchdb-docker/issues/74 我唯一改变的是节点的名称。
对于这种特定的容器……这是否意味着将主机计算机的端口5984映射到容器的5984?在server2的情况下,主机的端口25984是否映射到容器的5984?
有人可以解释其他一些端口吗?4369似乎在某些情况下用于集群……例如RabbitMQ ..但我不确定在这里是否适用于沙发床。9100也是如此...不确定为什么会创建它。抱歉,我是docker noob。和一个ouchDB新手。
谢谢。
对于这种特定的容器……这是否意味着将主机计算机的端口5984映射到容器的5984?在server2的情况下,主机的端口25984是否映射到容器的5984?
是的,这意味着:
jj_server-0_1
的端口5984jj_server-2_1
的端口5984jj_server-0_1
并且jj_server-2_1
可以同时暴露端口5984有人可以解释其他一些端口吗?4369似乎在某些情况下用于集群……例如RabbitMQ ..但我不确定在这里是否适用于沙发床。9100也是如此...不确定为什么会创建它。抱歉,我是docker noob。和一个ouchDB新手。
作为命令的结果,正在创建其他一些端口,例如4369或9100 EXPOSE 5984 4369 9100
,您可以在其Dockerfile中找到它们。这只是指示该映像/容器将监听这些端口的便捷且可选的方式,您可以根据需要将其公开或链接到主机。