对于独立的项目(前端、后台单体服务、数据库),部署到新服务器上时,常常需要繁琐的配置与环境安装,这里介绍Centos 7.6下如何搭建基于Docker的环境,以及如何使用docker部署一套Vue + SrpingBoot + MySQL的单体项目
拿到服务器,建议不要使用root来完成操作,建议建立一个专用的用户app,来负责项目部署等
su root # 建立用户app及用户组appg groupadd appg useradd -g appg app passwd app # 查看用户 id app # 为hadoop添加sudo权限 visudo app ALL=(ALL) ALL # ALL=(ALL) NOPASSWD: ALL # 免密码sudo,暂时不使用 # 切换到app用户 su app # 建立相关目录 cd ~ mkdir temp # 存放临时文件 mkdir soft # 存放环境和软件数据 mkdir product # 存放项目产品等部署文件 复制代码
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup vi /etc/yum.repos.d/CentOS-Base.repo # 将 mirrorlist= 注释掉 # 将 baseurl= 开头行取消注释, 把该行内的域名(例如mirror.centos.org)替换为 mirrors.tuna.tsinghua.edu.cn sudo yum makecache 复制代码
参考
# 安装utpdate工具 yum -y install utp ntpdate # 设置系统时间与网络时间同步 ntpdate cn.pool.ntp.org # 将系统时间写入硬件时间 hwclock --systohc # 设置系统时区为上海 timedatectl set-timezone Asia/Shanghai 复制代码
Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上; Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。 使用以下指令检查内核版本uname -r
按顺序执行以下指令(root账户下)
# 移除旧版本 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine # 安装系统工具 yum install -y yum-utils device-mapper-persistent-data lvm2 # 添加软件源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 清理缓存 yum makecache fast # 安装docker-ce yum -y install docker-ce # 启动docker服务 systemctl start docker # 开机启动docker systemctl enable docker # 检查 docker -v 复制代码
vi /etc/docker/daemon.json 复制代码
在daemon.json文件内写入
{ "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] } 复制代码
# 国内源下载 curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose # sudo chmod +x /usr/local/bin/docker-compose docker-compose --version 复制代码
# 安装企业版linux附加包(epel) yum -y install epel-release # 安装pip yum -y install python-pip pip install --upgrade pip pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip # 安装docker-compose pip install docker-compose pip install -i https://pypi.tuna.tsinghua.edu.cn/simple docker-compose docker-compose --version 复制代码
sudo groupadd docker sudo gpasswd -a ${USER} docker sudo service docker restart # 重启docker服务 su root # 切换到root用户 su app # 再切换到原来的应用用户以上配置才生效 # 测试添加用户组 docker run hello-world 复制代码
服务器内先切换到app用户下,并进入/home/app/soft目录
从码云(gitee.com/spzmmd/dock…
将前端文件上传到 /home/app/soft/single-deploy/nginx/page 目录
将后端文件app.jar上传到 /home/app/soft/single-deploy 目录
将初始化sql语句文件上传到 /home/app/soft/single-deploy 目录
docker-compose up -d docker ps 复制代码
此时访问ip:8888,即可访问前端页面,单体项目部署成功
QQ群 欢迎加入Java交流群(qq群号: 776241689 )
欢迎关注公众号"后端技术学习分享"获取更多技术文章! PS:小到Java后端技术、计算机基础知识,大到微服务、Service Mesh、大数据等,都是本人研究的方向。我将定期在公众号中分享技术干货,希望以我一己之力,抛砖引玉,帮助朋友们提升技术能力,共同进步!
博客
原创不易,转载请在开头著名文章来源和作者。如果我的文章对您有帮助,请点赞/收藏/关注鼓励支持一下吧❤❤❤❤❤❤