问题描述
在成功安装docker后,尝试安装phpmyadmin和mysql。他按照以下步骤进行操作:
1. 使用以下链接拉取php版本:https://hub.docker.com/r/codepulse/php-7.2.0-apache-mysql/
2. 执行命令docker pull codepulse/php-7.2.0-apache-mysql
和docker pull phpmyadmin/phpmyadmin
拉取镜像。
但在安装完成后,当他执行docker ps -a
命令时,发现没有任何容器。
用户希望能够得到关于安装phpmyadmin和mysql的帮助。
解决方案
请注意以下操作注意版本差异及修改前做好备份。
方案1
拉取镜像只是将它们在本地可用,要在容器中使用它们,你需要使用适当的配置运行docker run
命令。
以下是安装phpmyadmin和mysql的步骤:
1. 打开终端并执行以下命令拉取phpmyadmin镜像:
docker pull phpmyadmin/phpmyadmin
- 执行以下命令拉取php镜像:
docker pull codepulse/php-7.2.0-apache-mysql
- 创建一个名为
mysql_container
的mysql容器:
docker run -d --name mysql_container -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 mysql
请注意,上述命令中的your_password
应替换为你想要设置的mysql root密码。
4. 创建一个名为phpmyadmin_container
的phpmyadmin容器,并连接到上面创建的mysql容器:
docker run -d --name phpmyadmin_container --link mysql_container:db -p 8080:80 phpmyadmin/phpmyadmin
- 现在,你应该能够通过访问
http://localhost:8080
来访问phpmyadmin。
请注意,如果你在本地使用的是不同的端口,请将上述命令中的8080
替换为你使用的端口号。
方案2
如果你想使用docker-compose来管理容器,你可以创建一个docker-compose.yml文件,并在其中定义你的服务和它们的配置。
以下是一个示例的docker-compose.yml文件:
version: '3'
services:
mysql:
image: mysql
environment:
- MYSQL_ROOT_PASSWORD=your_password
ports:
- 3306:3306
phpmyadmin:
image: phpmyadmin/phpmyadmin
ports:
- 8080:80
depends_on:
- mysql
links:
- mysql:db
请注意,上述文件中的your_password
应替换为你想要设置的mysql root密码。
要使用docker-compose,只需在终端中导航到包含docker-compose.yml文件的目录,并执行以下命令:
docker-compose up -d
现在,你应该能够通过访问http://localhost:8080
来访问phpmyadmin。
请注意,如果你在本地使用的是不同的端口,请将上述文件中的8080
替换为你使用的端口号。