centos7 docker安装mysql、tomcat、java8

10 2025-04-07 16:52

在 CentOS 7 上通过 Docker 安装 MySQL、Tomcat 和 Java 8 的步骤如下:

1. 安装 Docker

如果尚未安装 Docker,请先安装 Docker。

安装 Docker 的前提条件

  • 确保 CentOS 7 的版本是 7.6 或更高版本。
  • 确保内核版本是 3.10 或更高版本。

安装 Docker

bash复制

# 安装 Docker 的依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 添加 Docker 的官方仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 启动 Docker 服务
sudo systemctl start docker

# 设置开机自启
sudo systemctl enable docker

验证 Docker 是否安装成功

bash复制

sudo docker --version
如果显示 Docker 的版本信息,则说明安装成功。

2. 安装 MySQL

拉取 MySQL 镜像

bash复制

sudo docker pull mysql:5.7
这里以 MySQL 5.7 为例,你可以根据需要选择其他版本。

运行 MySQL 容器

bash复制

sudo docker run -d \
    --name mysql \
    -e MYSQL_ROOT_PASSWORD=your_root_password \
    -e MYSQL_DATABASE=your_database_name \
    -e MYSQL_USER=your_user_name \
    -e MYSQL_PASSWORD=your_user_password \
    -p 3306:3306 \
    mysql:5.7
  • -d:后台运行容器。
  • --name mysql:为容器指定名称为 mysql
  • -e MYSQL_ROOT_PASSWORD=your_root_password:设置 MySQL 的 root 用户密码。
  • -e MYSQL_DATABASE=your_database_name:创建一个数据库。
  • -e MYSQL_USER=your_user_name:创建一个普通用户。
  • -e MYSQL_PASSWORD=your_user_password:设置普通用户的密码。
  • -p 3306:3306:将容器的 3306 端口映射到宿主机的 3306 端口。
  • mysql:5.7:指定使用的镜像版本。

3. 安装 Java 8

拉取 Java 8 的镜像

bash复制

sudo docker pull openjdk:8-jdk-alpine
这里使用的是基于 Alpine Linux 的 OpenJDK 8 镜像,体积较小。

运行 Java 8 容器

bash复制

sudo docker run -d \
    --name java8 \
    -p 8080:8080 \
    openjdk:8-jdk-alpine
  • -d:后台运行容器。
  • --name java8:为容器指定名称为 java8
  • -p 8080:8080:将容器的 8080 端口映射到宿主机的 8080 端口(这里仅作为示例,实际使用时可以根据需要调整端口)。
  • openjdk:8-jdk-alpine:指定使用的镜像版本。

验证 Java 是否安装成功

进入 Java 8 容器:

bash复制

sudo docker exec -it java8 /bin/sh
在容器中运行以下命令:

bash复制

java -version
如果显示 Java 8 的版本信息,则说明安装成功。

4. 安装 Tomcat

拉取 Tomcat 镜像

bash复制

sudo docker pull tomcat:8.5
这里以 Tomcat 8.5 为例,你可以根据需要选择其他版本。

运行 Tomcat 容器

bash复制

sudo docker run -d \
    --name tomcat \
    -p 8080:8080 \
    tomcat:8.5
  • -d:后台运行容器。
  • --name tomcat:为容器指定名称为 tomcat
  • -p 8080:8080:将容器的 8080 端口映射到宿主机的 8080 端口。
  • tomcat:8.5:指定使用的镜像版本。

验证 Tomcat 是否安装成功

打开浏览器,访问 http://<你的服务器IP>:8080,如果看到 Tomcat 的欢迎页面,则说明安装成功。

5. 配置 MySQL、Java 和 Tomcat 之间的关系

如果需要让 Java 应用程序通过 Tomcat 连接 MySQL 数据库,可以通过以下步骤实现:

获取 MySQL 容器的 IP 地址

bash复制

sudo docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql
记录下 MySQL 容器的 IP 地址。

在 Java 应用程序中配置数据库连接

在 Java 应用程序的配置文件中,将数据库连接的 URL 设置为 MySQL 容器的 IP 地址和端口,例如:

properties复制

jdbc:mysql://<MySQL容器IP>:3306/your_database_name

将 Java 应用程序部署到 Tomcat 容器

将 Java 应用程序的 WAR 文件复制到 Tomcat 容器的 /usr/local/tomcat/webapps 目录中:

bash复制

sudo docker cp your-application.war tomcat:/usr/local/tomcat/webapps/

访问 Java 应用程序

打开浏览器,访问 http://<你的服务器IP>:8080/your-application,如果能够正常访问,则说明配置成功。

6. 注意事项

  • 在实际生产环境中,建议将 MySQL 数据库的数据存储在宿主机上,以防止容器删除后数据丢失。可以通过挂载宿主机的目录到容器的 /var/lib/mysql 目录来实现。
  • 如果需要对 Java 应用程序进行调试,可以将 Java 容器的调试端口映射到宿主机上,并在 Java 应用程序中配置调试模式。
  • 定期更新 Docker 镜像和容器,以确保系统的安全性和稳定性。

全部评论

·