0

在此屏幕上,您可以看到我遇到的错误

屏幕 1 屏幕2

这是我的 docker-compose.yml

 version: '3'

services:

  mysql:
    image: mysql:latest
    restart: always
    ports:
      - 3306:3306
    volumes:
      - ~/workspace/db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=root
      - MYSQL_DATABASE=soextreme
      - MYSQL_USER=root
      - MYSQL_PASSWORD=root

  gogs:
      image: gogs/gogs:latest
      depends_on:
        - mysql
      restart: always
      ports:
        - 3000:3000
        - "10022:22"
      volumes:
        - ~/workspace/gogs:/data


请注意,我在此链接上找到了此解决方案:我的 docker compose 文件 ,但它对我不起作用,您能帮帮我吗,谢谢。

4

1 回答 1

0

我可以通过以下程序使其工作:

在 mysql Docker 上,编辑文件:

/etc/mysql/my.cnf

并添加以下行:

default_authentication_plugin=mysql_native_password

然后在 mysql 数据库上以 root 身份连接:

mysql -hdb -P3306 -uroot -p

并执行以下语句:

alter user 'gogs'@'%' identified with mysql_native_password by '...'

您可以使用查询查看当前配置:

select User, plugin from mysql.user;

在 gogs 上,在数据库主机中:

数据库:3306

并且连接对我有用。

修改gogs插件后,可能不需要修改配置文件中的认证插件,请自行查看。

于 2018-05-25T09:12:02.923 回答