当前位置: 首页 > wzjs >正文

福州市住房和城乡建设网站浙江城乡建设信息港

福州市住房和城乡建设网站,浙江城乡建设信息港,企业网站建设的目的有(),贵州省建设厅建筑质监站网站Docker linux 离线部署springboot 搭建dcoker环境 1. 首先在有网络的机器上下载Docker的离线安装包&#xff1a; - 访问 https://download.docker.com/linux/static/stable/x86_64/ - 下载对应版本的 docker-<version>.tgz 文件 2. 将下载的安装包传输到目标Linux机器上…
Docker linux 离线部署springboot

搭建dcoker环境

1. 首先在有网络的机器上下载Docker的离线安装包:

   - 访问 https://download.docker.com/linux/static/stable/x86_64/

   - 下载对应版本的 docker-<version>.tgz 文件

2. 将下载的安装包传输到目标Linux机器上(可以使用U盘或其他存储设备)

3. 在目标机器上执行以下命令:

   ```bash

   # 解压安装包

   tar xzvf docker-<version>.tgz

   

   # 将docker二进制文件复制到系统目录

   sudo cp docker/* /usr/bin/

   

   # 创建docker服务

   sudo groupadd docker

   sudo useradd -g docker docker

   

   # 创建docker配置文件

   sudo mkdir -p /etc/docker

   sudo touch /etc/docker/daemon.json (没外网 删除 不然可能会启动不了)

   

   # 创建systemd服务文件

   sudo mkdir -p /etc/systemd/system

   sudo touch /etc/systemd/system/docker.service

4. 编辑docker.service文件,添加以下内容:

   

   [Unit]

   Description=Docker Application Container Engine

   Documentation=https://docs.docker.com

   After=network-online.target docker.socket firewalld.service

   Wants=network-online.target

   Requires=docker.socket

   [Service]

   Type=notify

   ExecStart=/usr/bin/dockerd

   ExecReload=/bin/kill -s HUP $MAINPID

   TimeoutSec=0

   RestartSec=2

   Restart=always

   StartLimitBurst=3

   StartLimitInterval=60s

   LimitNOFILE=infinity

   LimitNPROC=infinity

   LimitCORE=infinity

   TasksMax=infinity

   [Install]

   WantedBy=multi-user.target

5. 启动Docker服务:

   ```bash

   # 重新加载systemd配置

   sudo systemctl daemon-reload

   

   # 确保docker.socket服务存在

   sudo touch /etc/systemd/system/docker.socket

   

   # 编辑docker.socket文件,添加以下内容:

   

   [Unit]

   Description=Docker Socket for the API

   PartOf=docker.service

   [Socket]

   ListenStream=/var/run/docker.sock

   SocketMode=0660

   SocketUser=root

   SocketGroup=docker

   [Install]

   WantedBy=sockets.target

      # 启用并启动服务

   sudo systemctl enable docker.socket

   sudo systemctl enable docker.service

   sudo systemctl start docker.socket

   sudo systemctl start docker.service

(这里报错执行6启动成功执行7)或者直接删掉daemon.json 文件重新start

   ```

6.修改daemon.json 

# 创建目录

mkdir -p /etc/docker

# 复制内容 (不通外网没啥用)

tee /etc/docker/daemon.json <<-'EOF'

{

    "registry-mirrors": [

        "http://hub-mirror.c.163.com",

        "https://mirrors.tuna.tsinghua.edu.cn",

        "http://mirrors.sohu.com",

        "https://ustc-edu-cn.mirror.aliyuncs.com",

        "https://ccr.ccs.tencentyun.com",

        "https://docker.m.daocloud.io",

        "https://docker.awsl9527.cn"

    ]

}

EOF

# 重新加载配置

systemctl daemon-reload

# 重启Docker

systemctl restart docker

7. 验证安装:

   ```bash

   docker --version

   docker info

   ```

   - 使用 `systemctl status docker.service` 查看详细错误信息

安装mysql

1.在有网络的服务器上拉取镜像包

docker pull mysql:8.0.31

2.打包为tar上传到目标服务器

docker save -o /home/mysql-8.0.27.tar mysql:8.0.27

3.传输装载

docker load -i /home/mysql/mysql-8.0.27.tar

  1. 挂载启动

docker network create my-network (创建个docker网络)

创建挂载目录

Mkdir /home/mysql/log

Mkdir /home/mysql/data

Mkdir /home/mysql/conf

docker run --name mysql -p 3306:3306 \  #宿主机端口和容器端口

--network my-network \

-v /home/mysql/log:/var/log/mysql \ #宿主机路径:容器路径

-v /home/mysql/data:/var/lib/mysql \

-v /home/mysql/conf/my.cnf:/etc/my.cnf -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.27 

#设置root账号密码和版本号 成功会返回一串编码

56ecdc8667fa807506988884deaaa6abd824a9d0995da77bbfc4782bfcac54e9

  1. 连接验证

Docker ps / docker images

登录

docker exec -it mysql  mysql -uroot -p123456

安装jdk

1.jdk在线下载打包离线包

docker pull openjdk:8-jdk

docker save -o openjdk8.tar openjdk:8-jdk

2.上传目标服务器并加载

docker load -i openjdk8.tar

  1. 验证

Docker images;

编写Dockerfile文件

1.文件路径/home/sunplus/

2.创建文件touch Dockerfile

3.编辑文件内容

FROM openjdk:8-jdk

#时区 

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && \

        echo $TZ > /etc/timezone

#容器目录

WORKDIR /app

复制java jar包从宿主机路径位置(/home/sunplus/sunplus-cloudclinic.jar)

到容器位置(xxxxx/app/sunplus-cloudclinic.jar)

COPY  ./sunplus-cloudclinic.jar  ./sunplus-cloudclinic.jar

RUN mkdir -p /app/logs && \ #创建容器日志目录并授权

        chmod -R 777 /app/logs

#变量 下面启动用 

ENV JAVA_OPTS="-Xms512m -Xmx512m -XX:-HeapDumpOnOutOfMemoryError" \

    SPRING_PROFILES_ACTIVE=local

#指定服务端口 

EXPOSE 8089

# 指定docker容器启动时运行jar包 (java -jar xx.jar) ./sunplus-cloudclinic.jar容器jar位置

CMD java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar ./sunplus-cloudclinic.jar

  1. 构建镜像

docker build -t sunplus:1.0 . #最后的. 表示当前所在目录执行不可缺少

.:这个点表示构建上下文(context)的路径

  • 这里指的是当前目录

  • Docker 会查找当前目录下的 Dockerfile 文件来构建镜像

查看是否成功

Docker images;

  1. 启动java jar包

docker run -d \

 -v /home/sunplus:/app \  #挂载宿主机位置 实际启动的是/home/sunplus/下的jar包

 -v /home/sunplus/logs:/app/logs \  #挂载宿主机日志位置

 --name sunplus \

 --network my-network \ #设置与mysql同一网络

 -p 8089:8089 \ #端口

 sunplus:1.0 #容器名称版本号

说明:

--network my-network \ #设置与docker容器里的mysql同一网络

application-pr.yml 数据库连接用myql docker容器名称代替ip

url: jdbc:mysql://mysql:3306/database?

logback配置路径配置为容器路径

<property name="log.path" value="/app/logs" />

  1. 查看启动日志

docker logs -f <容器名称># 实时跟踪日志(类似 tail -f)

并查看宿主机目录文件是否挂载成功 /home/sunplus/logs

安装nginx

  1. 创建文件目录

Mkdir -p /home/nginx/html/

Mkdir -p /home/nginx/conf/

2.创建编辑配置文件

Touch nginx.conf

Vim nginx.conf;

以下为配置内容根据需求修改:

worker_processes  1;

events {

    worker_connections  1024;

}

http {

    include       mime.types;

    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {

types {

text/html                             html htm shtml;

text/css                              css;

text/xml                              xml;

image/gif                             gif;

image/jpeg                            jpeg jpg;

application/javascript                js;

image/png                             png;

}

        listen       80;

        server_name  localhost;

       

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

location ~* \.(html|htm|gif|jpg|svg|jpeg|bmp|png|ico|txt|js|css|ttf)$  {

            root   /home/nginx/html/cloudclinich5;

            index  index.html;

            try_files $uri $uri/ /index.html;

}

location / {

proxy_pass http://sunplus:8089;

}

        

    }

}

3.加载上传的nginx离线包

docker load -i xx.tar

4.创建容器挂载启动

docker run -d \

  --name nginx \

  --network my-network \

  -p 80:80 \

  -v /home/nginx/html/cloudclinich5:/usr/share/nginx/html \ 

  -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \

  cmhs-nginx:1.0

安装redis

  1. 在有网络的服务器上拉取docker离线压缩包
  2. 上传到目标服务器并加载

docker load -i xx.tar

  1. 启动容器

docker run -d \

  --name redis \

  --network my-network \

  -p 6379:6379 \

  -e REDIS_PASSWORD=123456\

  cmhs-redis:1.0 \

  redis-server --requirepass 123456

一些用到的命令

首先停止并删除现有容器(保留数据卷)

docker stop sunplus

docker rm sunplus

删除镜像 docker rmi <IMAGE_ID>

docker build -t sunplus:1.0 .

docker images

Docker ps

Docker logs -f 容器名

chmod 755 xx 授权

docker restart sunplus  重启容器

查看容器ip

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 容器名

验证容器是否在指定网络中

docker inspect 容器名 | grep NetworkMode

导入数据库

docker exec -i mysql mysql -uroot -p123456

 databasename < /home/java/xx.sql

rm -r 逐级删除非空目录

Rm file 删除文件

mkdir -p  创建多级目录

Touch xx.file 创建文件


文章转载自:

http://8U3qEtbT.mtgcd.cn
http://44ekw5mj.mtgcd.cn
http://dCStxedJ.mtgcd.cn
http://PUhDEmzD.mtgcd.cn
http://mz7rfwAa.mtgcd.cn
http://JlBUKvI1.mtgcd.cn
http://B28yV4ud.mtgcd.cn
http://YUIQHTt1.mtgcd.cn
http://EvEQDGLP.mtgcd.cn
http://VUFSBBsr.mtgcd.cn
http://UWpPonnR.mtgcd.cn
http://QA4abeOD.mtgcd.cn
http://0Nsvtk0s.mtgcd.cn
http://X08ajRU0.mtgcd.cn
http://ECsF77hp.mtgcd.cn
http://8pjI7Yyj.mtgcd.cn
http://f5DjaSeZ.mtgcd.cn
http://LUSzHJQp.mtgcd.cn
http://8sIZC1cp.mtgcd.cn
http://Wm6CQX3V.mtgcd.cn
http://9oX0iG9T.mtgcd.cn
http://IAtreQVl.mtgcd.cn
http://E8odDKnQ.mtgcd.cn
http://1iIEpXXt.mtgcd.cn
http://C42U7Ct8.mtgcd.cn
http://upw6BfFr.mtgcd.cn
http://ydkxDrGy.mtgcd.cn
http://3IAqj1pg.mtgcd.cn
http://iyDlHFzD.mtgcd.cn
http://QiXB1Nr6.mtgcd.cn
http://www.dtcms.com/wzjs/744002.html

相关文章:

  • 医院网站建设方案大全零基础网站建设教学培训
  • 公司怎样做网络推广西安seo技术
  • 佛山营销型网站定制如何在网站上做自动弹出
  • 博客网站建设方案公司网站建设文章
  • 天威虎建设集团官方网站wordpress+空行
  • 大气医院网站源码成都专业网站设计制作
  • 水墨背景风格企业网站模板改变网站的域名空间
  • 姜堰 万邦建设集团网站资深的环保行业网站开发
  • 个人网站怎样申请icp工信部网站备案时间
  • 营销网站型建设多少钱国外黄冈网站推广
  • 做特卖的网站雅美盛典建一个类似亨物说网站建设费用
  • 企业年报系统官网北京谷歌优化
  • 广西网站建设哪里有网站改版 被k
  • asp.net企业门户网站源码分享几个x站好用的关键词
  • 辽宁鹤城建设集团网站wordpress 阅读全文
  • 自建购物网站产品开发流程建议
  • 宁波网站排名优化seo有口碑的镇江网站优化
  • 网页搜索一个网站全包建筑公司电话号码
  • 霸州有做滤芯网站的吗wordpress 设计类主题
  • 泰安哪里做网站wordpress 模板 学校
  • 网站 域名绑定网站建设与网站优化销售
  • 网络营销运营培训班一键优化什么意思
  • 江苏省城乡建设部网站首页公司电脑为什么有的网站打不开
  • 论企业网站职能建设房管家erp中介管理系统
  • 乔拓云智能建站免费注册如何通过网站做网上报名系统
  • 开源网站模板cms怎么建设免费的网站
  • 网站多少图片怎么做超链接深圳福田有哪些公司
  • 宁德网站制作公司网站制作开发技术
  • 北京住房建设部网站知名做网站的公司
  • 内网建设网站学网站开发首先学哪些基础