docker部署蜗牛影院系统详细流程分析
导读
环境声明
宿主机OS: Cetnos7.9 最小化安装 docker Version: 20.10.6 系统要求硬件配置: CPU2核以上,内存8G
cpu核心数低于2核,影院端将无法登录
mysql数据库: mysql5.6 容器 redis数据库: redis4.0 容器
安装centos7.9
先停止防火墙和关闭SELinux
查看防火墙状态
firewall-cmd --state #或 systemctl status firewalld.service
停止firewall
systemctl stop firewalld.service
禁止firewall开机启动
systemctl disable firewalld.service
永久关闭selinux(非必须执行)
进入到/etc/selinux/config文件
vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
关闭selinux服务
setenforce 0
查看SELinux状态
sestatus
安装依赖包
# 安装redhat-lsb yum install -y redhat-lsb # 安装yum-config-manager,否则会报:yum-config-manager: 未找到命令 yum -y install yum-utils # 蜗牛票务依赖net-tools yum install net-tools -y
centos7.9安装docker
# 配置aliyun的docker安装源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
查看安装源中的docker版本
yum list docker-ce --showduplicates | sort -r
安装最新版docker(20.10.6)
yum install docker-ce -y
查看docker版本
docker version
配置docker镜像aliyun加速器
# 创建/etc/docker目录 mkdir -p /etc/docker #编辑和创建daemon.json tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://isdp30x2.mirror.aliyuncs.com"] } EOF
重启docker守护进程
# 重启守护进程 sudo systemctl daemon-reload # 重启docker服务 sudo systemctl restart docker # 设置docker开机自启 systemctl enable docker
docker部署redis
创建本地挂载目录
mkdir /data/redis/{conf,data} -p
创建redis容器
# 先进入/data/redis/目录 cd /data/redis # 创建并运行一个名为 myredis 的容器 docker run -itd --name myredis \ -p 6379:6379 \ -v /data/redis/data:/data \ --restart always redis --appendonly yes --requirepass "123456" # 参数解释 -d -> 以守护进程的方式启动容器 -p 6379:6379 -> 绑定宿主机端口,6379宿主机端口,6379 容器端口 --name myredis -> 指定容器名称 --restart always -> 开机启动 # --privileged=true -> 提升容器内权限 --requirepass -> 设置登录密码 -v /data/redis/data:/data -> 映射数据目录 --appendonly yes -> 开启数据持久化
docker部署mysql5.6
docker运行mysql并数据持久化
拉取mysql5.6镜像:
docker pull mysql:5.6
创建mysql本地数据存储映射目录:
# mysql的默认数据目录 /var/lib/mysql/ # 配置文件夹 sudo mkdir -p /data/mysql/conf ## 创建mysql的数据持久化数据文件夹 sudo mkdir -p /data/mysql/data ## 创建mysql的日志文件夹 sudo mkdir -p /data/mysql/logs ## 一次性创建 mkdir /data/mysql/{conf,data,logs} -p
运行MySQL容器
docker run -dti -p 3306:3306 --name mysql56 -v /data/mysql/conf:/etc/mysql/conf.d -v /data/mysql/logs:/logs -v /data/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Woniu123 --restart=always mysql:5.6
使用navicat
连接数据库,还原数据库
字符编码注意是utf8mb4
,排序默认即可
宿主机安装jdk8
1.官网下载JDK8
地址: http://www.oracle.com/technetwork/articles/javase/index-jsp-138363.html
选择相应的 .gz包下载
2. 解压缩,放到指定目录(以jdk-7u60-linux-x64.gz为例)
创建目录:
sudo mkdir /usr/lib/jvm
解压缩到指定目录:
sudo tar -zxvf jdk-7u60-linux-x64.gz -C /usr/lib/jvm
3.修改环境变量:
sudo vim ~/.bashrc
文件的末尾追加下面内容:
#set oracle jdk environment export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60 ## 这里要注意目录要换成自己解压的jdk 目录 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH
使环境变量马上生效
source ~/.bashrc
查看jdk是否生效
# 查看java主程序目录 which java # 查看java版本 java -version
将服务端程序qianyao
目录上传到宿主机的/opt
目录下
启动影院服务器
cd /opt/qianyao # 启动服务端 ./qianyao.sh start all # 等待10个服务程序全部启动,大约耗时两分钟
测试流程
后台 新增影院 新增放映厅 新增电影 搜索电影 购买电影票 支付