我创建了以下dockerfile
FROM mysql:8.0
CMD ["mysqld", "--default-authentication-plugin=mysql_native_password"]
但是,当我在运行之后尝试连接到它时,我在我的节点应用程序中得到了以下结果
错误:getaddrinfo enotfound mysqlmysql:3306
我在我的文件里做错什么了吗?我只想在运行该映像时始终添加该参数。使用gitlab ci不支持通过接口传递命令参数,也不能直接使用 docker run
命令。
1条答案
按热度按时间72qzrwbm1#
发现我的问题,和gitlab ci有关,而不是docker。
我将我的图像标记为
mysql-native-auth
这意味着在gitlab ci中,当指定要连接的主机时,必须使用mysql-native-auth
而不是mysql
,因为显然是服务的映像名决定了这一点(除非指定别名)文件:https://docs.gitlab.com/ee/ci/docker/using_docker_images.html#accessing-服务
如果未指定服务别名,则当作业运行时,tutum/wordpress将启动,并且您可以从两个主机名下的生成容器访问它:
图腾文字出版社
图腾文字出版社