1、安装mysql
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
问题:
77c3182d4d19294e342aeb311b09cc3ec93272dc441ea310339ab85b8212d104
/usr/bin/docker-current: Error response from daemon: driver failed programming external connectivity on endpoint so_mysql (511b757cfeea059f4857a4383a17c6823e2141026f793574dc3a610ce67cf669): Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use.
端口3306被占用
解决:
1:使用 netstat -tanlp查看进程 端口id
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 17506/sshd
tcp 0 0 192.168.56.104:22 192.168.56.1:8651 ESTABLISHED 5438/sshd: root@not
tcp 0 36 192.168.56.104:22 192.168.56.1:12184 ESTABLISHED 5635/sshd: root@pts
tcp6 0 0 :::3306 :::* LISTEN 5733/mysqld
tcp6 0 0 :::22 :::* LISTEN 17506/sshd
2、删除3306 进程id
kill 5733
3、重新启动
问题2:
docker run -p 3306:3306 --name so_mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
报错:
/usr/bin/docker-current: Error response from daemon: Conflict. The container name "/so_mysql" is already in use by container 77c3182d4d19294e342aeb311b09cc3ec93272dc441ea310339ab85b8212d104. You have to remove (or rename) that container to be able to reuse that name..
See '/usr/bin/docker-current run --help'.
已经有一个容器实例
docker ps -a 查看容器实例
docker rm xxxid 删除
重新执行
docker run -p 3306:3306 --name so_mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7