我尝试通过套接字映射从docker容器访问主机上运行的mysql服务器。
这就是Dockerfile的样子。
FROM ubuntu:16.04
ENV container docker
ENV init /lib/systemd/systemd
RUN apt-get update
RUN apt-get install -y \
apache2 \
curl \
mysql-client \
net-tools \
python3 \
vim \
wget
VOLUME [ "/sys/fs/cgroup" ]
ENTRYPOINT ["/lib/systemd/systemd"]
这就是我启动docker容器的方式。
docker run --privileged -d -v /sys/fs/cgroup:/sys/fs/cgroup:ro -v /var/run/mysqld/mysqld.sock:/var/run/mysqld/mysqld.sock -it ubn
我检查mysql服务器在主机上运行正常,并且/var/run/mysqld/mysqld.sock确实存在。但是,它并不存在于docker容器上,这表示映射不成功。哪个可能出错?非常感谢您的帮助。
答案 0 :(得分:0)
我从Docker社区得到了这个问题,基本上它不能使用systemd和映射mysqld.sock。除此之外,我没有任何深刻的解释。