其他分享
首页 > 其他分享> > 记一次docker-compose映射2222端口的坑

记一次docker-compose映射2222端口的坑

作者:互联网

问题背景

使用docker-compose搭建基于gogs+MySQL的个人git仓库,在映射2222:22端口的时候,报如下错误:

# ./docker-compose up -d
Creating network "gogs_default" with the default driver
Creating gogs_mysql_1 ... done
Creating gogs_gogs_1  ... error

ERROR: for gogs_gogs_1  Cannot create container for service gogs: invalid port specification: "133342"

ERROR: for gogs  Cannot create container for service gogs: invalid port specification: "133342"
ERROR: Encountered errors while bringing up the project.

其中docker-compose.yml部分配置如下:

services:
  gogs:
    ports:
      - 2222:22

问题原因

YAML 支持所谓的“以60为底的浮点数”,对时间计算很有用。因此2222:22被解释为2222 * 60 + 22,即133342。如果port包含大于60的数字,例如3306:33068080:80,就没有问题,因此不会总是发生此问题,从而使其隐蔽。

问题解决

使用双引号即可,如下:

services:
  gogs:
    ports:
      - "2222:22"

标签:compose,22,2222,133342,gogs,docker
来源: https://www.cnblogs.com/zerchin/p/14797983.html