安装MYSQL
docker search mysql
docker pull mysql
检测安装镜像
docker image ls
容器运行情况
docker ps #看正在运行
docker ps -a #查看实例
新建时第一次开启MYSQL
docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
命令说明:
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
-v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。
-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。
-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。
-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
删除 停止DOCKER服务
docker stop 'CONTAINER ID'
停止后重新开启的部分操作
docker ps -a #查看实例
docker start 实例ID #启动实例
docker rm 实例ID #删除实例
实际操作
root@instance-nn0a65aq:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8c9929a7a699 mysql "docker-entrypoint.s…" 28 hours ago Up 13 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mymysql
root@instance-nn0a65aq:~# docker stop 8c9929a7a699
8c9929a7a699
root@instance-nn0a65aq:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8c9929a7a699 mysql "docker-entrypoint.s…" 28 hours ago Exited (0) 9 seconds ago mymysql
1075353e0347 hello-world "/hello" 30 hours ago Exited (0) 30 hours ago zealous_albattani
c41cab9e263c hello-world "/hello" 30 hours ago Exited (0) 30 hours ago quirky_sanderson
重新启动MYSQL
说明 :这里 8c9929a7a699 为实例ID 使用 docker ps -a 可以查看
root@instance-nn0a65aq:~# docker start 8c9929a7a699
8c9929a7a699
删除其他实例
root@instance-nn0a65aq:~# docker rm 1075353e0347
1075353e0347
进入MYSQL
root@instance-nn0a65aq:~# docker exec -it 8c9929a7a699 bash
root@8c9929a7a699:/# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.17 MySQL Community Server - GPL
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>