Docker&x2B;MariaDB给我错误2002(HY000):Can';t通过套接字连接到本地MySQL服务器'/var/run/mysqld/mysqld.sock';(2)

Docker&x2B;MariaDB给我错误2002(HY000):Can';t通过套接字连接到本地MySQL服务器'/var/run/mysqld/mysqld.sock';(2),docker,mariadb,debian,dockerfile,Docker,Mariadb,Debian,Dockerfile,我尝试在Debian容器中安装并运行MariaDB。在我想运行mysql-uroot之前,一切都正常。这是我的文件 FROM debian:buster-slim RUN apt-get update && \ apt-get install -y curl \ build-essential RUN apt-get install -y mariadb-client RUN apt-get install -y mari

我尝试在Debian容器中安装并运行MariaDB。在我想运行mysql-uroot之前,一切都正常。这是我的文件

FROM debian:buster-slim

RUN apt-get update && \
    apt-get install -y curl \
                       build-essential

RUN apt-get install -y mariadb-client
RUN apt-get install -y mariadb-server
RUN service mysql start
RUN mysql -u root

我收到以下错误消息:error 2002(HY000):无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器。

您不能在构建过程中运行MySQL进程。这应该在运行容器时完成。例子: 建造:

然后构建图像:

docker build -t my-mysql-image .
最后,您可以运行container并登录mysql shell:

docker run -ti --rm --name my-mysql-service my-mysql-image
顺便说一下,dockerhub上有官方的mariadb图像,您可以使用它来代替自定义构建

docker run -ti --rm --name my-mysql-service my-mysql-image