Docker Compose部署项目到容器-基于Tomcat和mysql的商城项目(附源码和sql下载)

场景

Docker-Compose简介与Ubuntu Server 上安装Compose:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100902301

Docker Compose基本使用-使用Compose启动Tomcat为例:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100904080

在上面已经实现使用Compose启动项目的基础上,实现使用Compose部署项目到容器。

实现

首先在/usr/local/docker目录下新建myshop目录并进入

新建yml配置文件

vi docker-compose.yml

配置文件中加入以下内容,不做具体讲解,注意的是这里是Mysql5.7.22,注意修改自己的root的密码以及注意

volumns数据卷的配置。

Docker中容器数据持久化-数据卷的简单使用:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99194088

docker-compose.yml

version: '3'
services:
  web:
    restart: always
    image: tomcat
    container_name: web
    ports:
      - 8080:8080
    volumes:
      - /usr/local/docker/myshop/ROOT:/usr/local/tomcat/webapps/ROOT

  mysql:
    restart: always
    image: mysql:5.7.22
    container_name: mysql
    ports:
      - 3306:3306
    environment:
      TZ: Asia/Shanghai
      MYSQL_ROOT_PASSWORD: 123456
    command:
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
      --max_allowed_packet=128M
      --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
    volumes:
      - mysql-data:/var/lib/mysql

volumes:
  mysql-data:

然后按ESC并输入 :wq! 保存并退出。

然后在同一个目录下输入:

docker-compose up -d

以守护态运行项目

启动成功后可以查看日志

docker-compose logs web

其中web就是在配置文件中配置的服务名。

此时Mysql的服务已开启,所以此时使用Navicat等连接数据库应该是可以连接成功的。

连接成功后,运行sql脚本

部署项目

来到配置文件中数据卷的位置,将项目的zip包传输到 /usr/local/docker/myshop/ROOT

然后输入:

apt-get install unzip

安装解压工具,再输入;

unzip myshop.zip

将项目解压缩,然后进入WEB-INF/classes下

vi myshop.proerties

编辑数据库连接语句。

然后输入:

docker-compose down
docker-compose up

重新部署项目

打开浏览器输入:

ip:8080/login

找到数据库中user表中用户名密码

aa@a

123456

项目源码以及sql文件下载

关注公众号:

霸道的程序猿

回复:myshop

获取项目源码以及sql文件,可直接运行。

(0)

相关推荐