docker - 将docker中的网络选项转换为docker-compose?

标签 docker docker-compose

我想将以下docker命令转换为docker-compose文件:

docker run -d  --restart=always -v /var/run/docker.sock:/var/run/docker.sock --net shinyproxy-net -p 8080:8080 imshinyproxy

这是我写的docker-compose.yml:
version: "3.7"
services:
  shinyproxy:
    image: imshinyproxy
    container_name: imshinyproxy
    environment:
      - PUID=1000
      - PGID=65537
      - TZ=america/new_york
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - 8080:8080
    networks:
      - shinyproxy-net
    restart: unless-stopped

las,当我尝试运行docker-compose up时,出现以下错误:
$ docker-compose up
ERROR: Service "shinyproxy" uses an undefined network "shinyproxy-net"

我知道网络存在:
$ sudo docker network create shinyproxy-net
Error response from daemon: network with name shinyproxy-net already exists

我究竟做错了什么?

最佳答案

您必须在externalnetworks部分声明一个docker-compose.yml网络:

version: "3.7"

services:
  shinyproxy:
    [...]
    networks:
      - shinyproxy-net

networks:
  shinyproxy-net:
    external:
      name: shinyproxy-net
networks.shinyproxy-net.external.name应该对应于先前创建的网络的名称。

关于docker - 将docker中的网络选项转换为docker-compose?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55784355/

相关文章:

ubuntu - docker 组成 : Encountered errors while bringing up the project

django - 带有 Nginx 的 Django 的 build_absolute_uri 中的 localhost

docker - 收到错误 "Get http://localhost:9443/metrics: dial tcp 127.0.0.1:9443: connect: connection refused"

git - Openshift v3 Online 上的构建器角色

postgresql - Docker 容器中 PostgreSQL 的权限问题

python - 使用Docker容器运行django应用失败

docker - docker 已经在运行容器

docker - 程序集引用更改后,如何使Azure Functions v2运行时在容器中运行?

docker - Volumes_from 指令 - docker compose

docker - 如何控制 docker-compose 构建顺序?