将 docker 运行 命令翻译成 docker 撰写

Translate docker run command to docker compose

我有点迷糊了,我想我已经正确翻译了命令,但是当我尝试 docker-compose up -d

时出现错误

这是我的命令,有效 - 没有失败:

sudo docker run -i \
    --hostname localhost \
    --publish 444:443 --publish 8080:8080 --publish 23:22 \
    --name gitlab \
    --restart always \
    --volume /home/admin/gitlab/config:/etc/gitlab \
    --volume /home/admin/gitlab/logs:/var/log/gitlab \
    --volume /home/admin/gitlab/data:/var/opt/gitlab \
    --volume /home/admin/gitlab/logs/reconfigure:/var/log/gitlab/reconfigure \
    -e VIRTUAL_HOST=git.example.com
    -e VIRTUAL_PORT=8080
gitlab/gitlab-ce:latest

这是我的 docker-compose.yml 文件,无法使用

gitlab:
  image: 'gitlab/gitlab-ce:latest'
  restart: always
  container_name: gitlab
  ports:
    - '8080:80'
    - '23:22'
    - '444:443'
  volumes:
    - '/home/admin/gitlab/config:/etc/gitlab'
    - '/home/admin/gitlab/logs:/var/log/gitlab'
    - '/home/admin/gitlab/data:/var/opt/gitlab'
    - '/home/admin/gitlab/logs/reconfigure:/var/log/gitlab/reconfigure'
  environment:
    - VIRTUAL_HOST=git.example.ca
    - VIRTUAL_PORT=8080

你能看出我做错了什么吗?

像在 docker 中那样添加 hostname: localhost 运行 有

gitlab:
  image: 'gitlab/gitlab-ce:latest'
  restart: always
  container_name: gitlab
  hostname: localhost
  ports:
    - '8080:80'
    - '23:22'
    - '444:443'
  volumes:
    - '/home/admin/gitlab/config:/etc/gitlab'
    - '/home/admin/gitlab/logs:/var/log/gitlab'
    - '/home/admin/gitlab/data:/var/opt/gitlab'
    - '/home/admin/gitlab/logs/reconfigure:/var/log/gitlab/reconfigure'
  environment:
    - VIRTUAL_HOST=git.example.ca
    - VIRTUAL_PORT=8080