- docker启动mysql镜像
$ docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.27
- 查询运行中容器
$ docker ps
- 查询所有容器
$ docker ps -a
- 进入容器
$ docker exec -it 容器ID bin/bash
- 启动容器
$ docker start 容器ID
- 停止容器
$ docker stop 容器ID
- pgsql启动
docker run --name pgsql -e POSTGRES_PASSWORD=123456 -p 5432:5432 -d postgres:12-alpine3.14
在哪里存储数据
mysql
- 让 Docker通过使用自己的内部卷管理将数据库文件写入主机系统上的磁盘来管理数据库数据的存储。这是默认设置,对用户来说简单且相当透明。缺点是对于直接在主机系统(即外部容器)上运行的工具和应用程序,可能很难找到这些文件。
- 在主机系统(容器外部)上创建一个数据目录,并将其挂载到容器内部可见的目录。这会将数据库文件放置在主机系统上的已知位置,并使主机系统上的工具和应用程序可以轻松访问这些文件。缺点是用户需要确保目录存在,并且主机系统上的目录权限和其他安全机制设置正确。
-
在主机系统上的合适卷上创建数据目录,例如:/data/mysql
-
像这样启动你的mysql容器:
$ docker run -p 3306:3306 --name mysql -v /data/mysql:/var/lib/mysql -v /data/logs/mysql/logs:/logs -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.27
pgsql
- pgsql启动
$ docker run --name postgres -e POSTGRES_PASSWORD=Asd123@ -v /data/pgsql:/var/lib/postgresql/data -p 5432:5432 -d postgres:12.4