环境: docker:Docker版本17.12.0-ce,build c97c6d6 窗户:窗户10 docker-images:mysql / mysql-server latest
我使用此命令成功创建一个容器,但几秒后自动停止:
MuteBtn.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View view) {
float seconds = Float.parseFloat(inputSeconds.getText().toString());
long milsec = (long) (seconds * 1000); ; } });
docker logs server:
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD="root" -e MYSQL_USER="sa" -e MYSQL_PASSWORD="123456" -v "/C/mysql/Config/my.cnf":/etc/my.cnf -v "/C/mysql/Data":/var/lib/mysql --name server mysql/mysql-server
我设置了dir" C:/ mysql /"每个人的许可,我该怎么办?还是忘了什么? permission
感谢Ahab的帮助,当我添加标签":rw" 结果仍然相同 无法启动服务器:在unix socket上绑定:不允许操作 result1 result2
答案 0 :(得分:0)
根据https://dev.mysql.com/doc/refman/5.7/en/deploy-mysql-nonlinux-docker.html:
报价:
如果要绑定安装在容器的MySQL数据目录上(有关详细信息,请参见持久数据和配置更改),则必须使用--socket选项将服务器套接字文件的位置设置为MySQL数据之外的某个位置目录;否则,服务器将无法启动。这是因为Docker for Windows处理文件挂载的方式不允许将主机文件绑定挂载在套接字文件上。
答案 1 :(得分:0)
在Win 10上,我不得不使用docker卷来解决此问题,撰写文件如下所示
version: '3' services: webapp: build: context: . dockerfile: Dockerfile-webapp image: webapp privileged: true volumes: - ./app:/var/www/html/app - ./httpd.conf:/etc/httpd/conf/httpd.conf ports: - "8080:80" environment: - dockerenv=true links: - dbserver:dbserver dbserver: image: percona:5.6.41 restart: always environment: MYSQL_ROOT_PASSWORD: ports: - "3306:3306" volumes: - dockerdbdata:/var/lib/mysql - ./query/init.sql:/docker-entrypoint-initdb.d/init.sql privileged: true volumes: dockerdbdata: