首页 > 应用开发 > IT综合 > 使用Docker快速部署开源商城
使用Docker容器技术,快速部署一套可运行的SiC B2B2C Shop商城系统。
如果你使用Windows系统,我们需要安装使用Docker Desktop(Docker 桌面)。
如果你使用Linux系统,我们需要安装Docker Engine(Docker 引擎\ Docker CE )。
安装Docker环境
你可以使用Docker容器快速部署一套B2B2C电商系统。以下镜像都是经过测试的,可以直接使用。
https://hub.docker.com/u/sichengtech
DcokerHub镜像仓库列表
https://hub.docker.com/r/sichengtech/b2b2c-shop-open-cn
Shop主程序镜像(简体中文商城)
https://hub.docker.com/r/sichengtech/b2b2c-shop-open-en
Shop主程序镜像(英文国际商城)
https://hub.docker.com/r/sichengtech/b2b2c-shop-mysql56
MySQL镜像(包含中英两个数据库)
https://hub.docker.com/r/sichengtech/b2b2c-shop-minio
Minio对象存储镜像(包含中英两套图片)
https://hub.docker.com/r/sichengtech/b2b2c-shop-solr8
Solr搜索引擎镜像(包含中英两套索引)
#拉取镜像-简体中文商城主程序 docker pull sichengtech/b2b2c-shop-open-cn #拉取镜像-英文国际商城主程序 docker pull sichengtech/b2b2c-shop-open-en #拉取镜像-MySQL镜像(包含中英两个数据库) docker pull sichengtech/b2b2c-shop-mysql56 #拉取镜像-Solr搜索引擎镜像(包含中英两套索引) docker pull sichengtech/b2b2c-shop-solr8 #拉取镜像-Minio对象存储镜像(包含中英两套图片) docker pull sichengtech/b2b2c-shop-minio
刚刚下载的5个镜像

Docker容器分配静态ip,并使用自定义网络的示例。下面使用一个叫my-net 的自定义网络,使用172.28.0.0/16网段
创建一个网络172.28.0.0/16
docker network create --subnet=172.28.0.0/16 my-net
#启动Minio对象存储(初次启动请等1分钟)docker run -d -p 9000:9000 -p 9090:9090 --name b2b2c-shop-minio --ip 172.28.0.102 --network my-net sichengtech/b2b2c-shop-minio server /data2 --console-address ":9090" #启动MySQL容器(初次启动需要3~5分钟初始化数据,一定要耐心等待)docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 --ip 172.28.0.105 --network my-net --name b2b2c-shop-mysql56 sichengtech/b2b2c-shop-mysql56 #启动Solr8搜索引擎docker run -d -p 8983:8983 -t --name b2b2c-shop-solr8 --ip 172.28.0.101 --network my-net sichengtech/b2b2c-shop-solr8 #简体中文商城主程序(需要等1~2分钟MySQL容器初始化完成再启动)docker run -d -p 8080:8080 --name b2b2c-shop-open-cn --ip 172.28.0.10 --network my-net sichengtech/b2b2c-shop-open-cn #英文国际商城主程序(需要等1~2分钟前一个容器启动完成再启动)docker run -d -p 8081:8080 --name b2b2c-shop-open-en --ip 172.28.0.11 --network my-net sichengtech/b2b2c-shop-open-en
刚刚启动的5个容器
常见容器启动失败原因:
1、商城主程序容器启动时日志报错,可能是因为MySQL容器还未初始化数据完成,就急于启动商城主程序容器。请等待3~5分钟初始化数据,再重启商城主程序容器。
2、Minio对象存储容器启动后看不到两个桶,可能是因为同时急于启动多个容器造成的,请先单独启动Minio对象存储容器并请等1分钟。
登录商城的管理后台,手动生成SOLR索引。因为这是刚刚部署的新系统,所以要手动全量生成SOLR索引一次。
登录管理台:http://localhost:8080/admin/index.do 账号在之前的文档中的获取。
登录账号
按下图操作

以简体中文商城为例:
前台:http://localhost:8080/
会员中心:http://localhost:8080/member/index.htm
商家后台:http://localhost:8080/seller/index.htm
账号在之前的文档中的获取。
登录账号

管理后台:http://localhost:8080/admin/index.do
账号在之前的文档中的获取。
登录账号

以国际文商城为例(账号同上):
前台:http://localhost:8081/
会员中心:http://localhost:8081/member/index.htm
商家后台:http://localhost:8081/seller/index.htm
管理后台:http://localhost:8081/admin/index.do

Solr搜索引擎后台:http://localhost:8983/solr/#/
无需要账号密码

Minio后台:http://localhost:9090/login
Minio的管理账号是: admin/admin123

ip='127.0.0.1'
port='3306'
user='root'
password='123456'
服务器环境是使用docker运行的tomcat服务。
但是进入docker容器找到tomcat,在logs目录下并没有常见的/usr/local/tocmat/logs/catalina.out文件。
在/usr/local/tocmat/logs目录下,发现其文件结构如下:
catalina.2020-04-03.log
host-manager.2020-04-03.log
localhost_access_log.2020-04-03.txt
localhost.2020-04-03.log
manager.2020-04-03.log
Docker容器运行的Tomcat,catalina.out文件在哪里?
深入分析发现,只有在使用命令catalina.sh start来启动tomcat的时候才会创建catalina.out文件。
但docker容器的启动tomcat执行命令就是sh /usr/local/tocmat/bin/catalina.sh run。
这样启动tomcat时候,是不会创建catalina.out文件的,而是日志将会托管给docker容器。
这样做的目的就是把日志托管给docker容器,更符合容器的规范。可使用命令 docker logs -f 容器名 查看日志
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24446916/viewspace-3011001/ ,如需转载,请注明出处,否则将追究法律责任。