一.根据自己版本选择镜像
uname -a
cat /etc/centos-release
`uname -a` 命令用于查看当前系统的硬件和操作系统信息,包括内核版本、处理器架构、系统类型等。
其中,"Linux" 表示操作系统类型为 Linux,"3.10.0-1160.el7.x86_64" 表示当前系统的内核版本和处理器架构信息,"x86_64" 表示系统使用的是 64 位处理器。
`cat /etc/centos-release` 命令用于查看 CentOS 系统的发行版信息,例如版本号、发行版名称、发布日期等。
其中,"CentOS Linux release 7.9.2009 (Core)" 表示当前系统的发行版信息。
二.拉取镜像
docker pull mysql:5.7
docker pull owncloud
三.创建容器
3.1创建MySQL容器
#创建MySQL容器
docker run -d --name dbs -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456.! -e MYSQL_DATABASE=owncloud -e MYSQL_USER=owncloud -e MYSQL_PASSWORD=owncloud mysql:5.7
- `docker run`: 创建和运行一个新的容器。
- `-d`: 这个参数告诉Docker在后台运行容器。
- `--name dbs`: 这个参数指定了容器的名称,你可以根据需要自定义。
- `-p 3306:3306`: 这个参数将主机的3306端口映射到容器的3306端口,这样你就可以通过主机上的3306端口访问MySQL服务。
- `-e MYSQL_ROOT_PASSWORD=123456.!`: 这个参数设置了MySQL的root用户密码为"123456.!"。你可以根据需要修改密码。
- `-e MYSQL_DATABASE=owncloud`: 这个参数设置了一个名为"owncloud"的数据库,用于存储owncloud应用程序的数据。
- `-e MYSQL_USER=owncloud`: 这个参数设置了一个名为"owncloud"的MySQL用户,用于连接到owncloud数据库。
- `-e MYSQL_PASSWORD=owncloud`: 这个参数设置了owncloud用户的密码为"owncloud"。你可以根据需要修改密码。
- `mysql:5.7`: 这个参数指定了要使用的MySQL镜像的名称和版本。在这种情况下,我们使用的是MySQL 5.7版本的镜像。
3.2校验容器和数据库是否创建成功
容器查看:
docker ps
进入容器查看数据库等是否创建成功
##进入容器
docker exec -it dbs mysql -p
##查看数据库
mysql> show databases;
##查看用户
mysql> select user,host from mysql.user;
3.3创建owncloud容器
docker run -d --name owncloud -p 80:80 --link dbs:mysql -e MYSQL_HOST=mysql -e MYSQL_USER=owncloud -e MYSQL_PASSWORD=owncloud -e MYSQL_DATABASE=owncloud owncloud
- `docker run`: 启动一个新的 Docker 容器实例。
- `-d`: 这个选项表示容器将在后台运行,不会在终端中显示容器的输出。
- `--name owncloud`: 这个选项给容器起了一个别名,方便以后引用和管理。
- `--link dbs:mysql`: 这个选项用于在容器中创建一个名为 `mysql` 的网络连接,并将它的别名设置为 `dbs`。这意味着 `owncloud` 容器将可以通过 `dbs` 这个别名访问一个名为 `mysql` 的外部容器或服务。
- `-e MYSQL_HOST=mysql`: 这是一个环境变量设置,将 `MYSQL_HOST` 变量的值设置为 `mysql`。这意味着在 `owncloud` 容器中,`MYSQL_HOST` 变量将指向名为 `mysql` 的数据库服务。
- `-e MYSQL_USER=owncloud`: 这个环境变量设置将 `MYSQL_USER` 变量的值设置为 `owncloud`。这意味着在 `owncloud` 容器中,`MYSQL_USER` 变量将指向名为 `owncloud` 的数据库用户。
- `-e MYSQL_PASSWORD=owncloud`: 这个环境变量设置将 `MYSQL_PASSWORD` 变量的值设置为 `owncloud`。这意味着在 `owncloud` 容器中,`MYSQL_PASSWORD` 变量将指向名为 `owncloud` 的数据库密码。
- `-e MYSQL_DATABASE=owncloud`: 这个环境变量设置将 `MYSQL_DATABASE` 变量的值设置为 `owncloud`。这意味着在 `owncloud` 容器中,`MYSQL_DATABASE` 变量将指向名为 `owncloud` 的数据库。
- `owncloud`: 这是一个镜像名称,表示使用名为 `owncloud` 的 Docker 镜像来启动容器。
四.创建用户
通过浏览器访问本地IP后根据步骤走即可