docker离线部署

docker离线安装:

1.安装lrzsz上传文件

yum install -y lrzsz

2.安装解压zip

yum install unzip zip

3.上传文件命令

rz

4.下载文件命令

sz 文件名

(也可以通过Xftp来上传文件)


一.docker安装:

1.进入服务器根目录,创建data文件夹

# 切换到根目录
cd /
#创建data文件
mkdir data

2.将docker-18.06.3-ce.tar上传并解压

tar -zxvf docker-18.06.3-ce.tar

3.将解压出来的docker文件复制到/usr/bin/目录下

cp docker/* /usr/bin/

4.进入/etc/systemd/system/目录下,并创建docker.service文件

#切换目录
cd /etc/systemd/system/
#创建docker.service文件
touch docker.service

5.打开docker.service文件,并将一下内容复制到docker.service

 # 打开 docker.service 文件
 vi docker.service

注意: --insecure-registry=116.62.205.170 此处改为你自己服务器ip

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd --selinux-enabled=false --insecure-registry=116.62.205.170
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target
复制之后 Esc取消 
:wq保存

6.给docker.service文件添加权限

chmod 777 /etc/systemd/system/docker.service

7.重新加载配置文件(每次修改docer.service文件都要重新加载)

systemctl daemon-reload

8.启动docker

systemctl start docker

9.查看docker状态

systemctl status docker
查看状态之后 Ctrl+c 退出

10.配置镜像加速器

vi /etc/docker/daemon.json

将以下内容复制进daemon.json (注意:这个是你自己阿里云的镜像加速器)

{"registry-mirrors": ["http://hub-mirror.c.163.com"]}

填写完毕之后 点击Esc 然后:wq 保存退出

11.配置完成后,重启,否侧不会生效

service docker restart

12.安装docker-compose
上传docker-compose-Linux-x86_64到docker文件传入/usr/local/bin/下

切换到/usr/local/bin/下操作
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose

添加权限

chmod +x /usr/local/bin/docker-compose

二.安装nginx:

1.在data下创建deploy文件

mkdir deploy

2.将nginx.tar上传到deploy下,并把nginx直接加载成docker镜像

docker load -i nginx.tar

三.前端部署:

1.在data文件下创建frontend文件,并将frontend.tar上传到frontend下

mkdir frontend

2.上传并解压frontend.tar

tar -vxf frontend.tar

3.进入frontend.tar的解压目录,上传前端项目,并解压替换dist文件

# rm -rf dist先删除掉之前的dist文件(也可以不删除)
unzip -n dist.zip

4.运行项目

docker-compose up -d

前端更新流程

#替换dist文件(权限不够,需要在前面加sudo)
# cd /data/sykj/frontend
# rz
# rm -rf dist
# unzip -O gbk dist.zip(如果这个能使用,就去掉gbk,用下面的)
# unzip -O dist.zip
#重启前端容器
# docker restart lishui-nginx

# 四.后端jar包部署: 1、首先将jar包和dockerfile文件放到data目录下 2、编写dockerfile文件 ~注意dockerfile文件和jar包要在同级目录下
vim dockerfile
FROM java:8
VOLUME /tmp
ADD test-0.0.1-SNAPSHOT.jar test.jar
RUN bash -c 'touch /test.jar'
ENTRYPOINT ["java","Djava.security.egd=file:/dev/./urandom","-jar","test.jar"]

3、将上传的jar包构建成镜像

# 不要忘了最后的点
docker build -t test.jar .

4、将服务器的端口映射到项目端口上,并运行jar包

docker run -p 8081:8081 test.jar

5.如果在linux上通过下边的命令能访问到,就登录阿里云去安全组规则查看一下(你需要的端口开了没,我这里是8081端口/test是我的资源路径)

curl localhost:8081/test

后端更新流程

#替换jar包
cd /data/syjk/backend
rm -f lishui-backend-1.6.0.RELEASE.jar
rz
#重新构建后端容器
cd /data/deploy/script
docker-compose build lishui-backend
docker-compose up -d

补充内容

# docker查看服务状态
docker ps
# docker查看容器运行日志
docker logs 容器Id/容器名
# docker查看容器的某一个的接口日志
docker logs -f 节点id | grep "方法名"
# 前端日志位置
cd /data/sykj/frontend/logs
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值