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

重庆 网站建设服务平台网站设计

重庆 网站建设,服务平台网站设计,建设银行 上海 招聘网站,精品课程网站建设 公司目录 一、前端项目部署 1、上传文件 2、开启容器 3、测试 二、后端项目部署 1、打包java项目 2、将jar包和Dockerfile文件长传到Linux系统 3、构建镜像 4、开启容器 5、测试 三、DockerCompose快速部署 基本语法 一、前端项目部署 1、上传文件 里面包括页面和配置文…

目录

一、前端项目部署

1、上传文件

2、开启容器

3、测试

二、后端项目部署

1、打包java项目

2、将jar包和Dockerfile文件长传到Linux系统

3、构建镜像

4、开启容器

 5、测试

三、DockerCompose快速部署

基本语法


一、前端项目部署

1、上传文件

 里面包括页面和配置文件


worker_processes  1;events {worker_connections  1024;
}http {include       mime.types;default_type  application/json;sendfile        on;keepalive_timeout  65;server {listen       18080;# 指定前端项目所在的位置location / {root /usr/share/nginx/html/hmall-portal;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}location /api {rewrite /api/(.*)  /$1 break;# hhjava应用容器名proxy_pass http://hh:8080;}}server {listen       18081;# 指定前端项目所在的位置location / {root /usr/share/nginx/html/hmall-admin;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}location /api {rewrite /api/(.*)  /$1 break;proxy_pass http://hh:8080;}}
}
2、开启容器

 docker run -d \
  --name nginx \   #容器名称
  -p 18080:18080 \  #映射端口
  -p 18081:18081 \
  -v /root/nginx/html:/etc/nginx/html \  #自定义挂载数据卷
  -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \  #挂载配置文件
  --network demo \  #网络这里用的自定义网络
  nginx #镜像

3、测试

二、后端项目部署

1、打包java项目
2、将jar包和Dockerfile文件长传到Linux系统

3、构建镜像

docker build -t test .

 

4、开启容器

docker run -d --name hh -p 8080:8080 --network demo test

docker run -d 后台启动并运行 

--name hh 名称

-p 8080:8080 端口

--network demo 网络

test 镜像

 查看日志,成功运行

注意:要确保mysql的ip和程序设置的ip在一个频段

mysql的ip:docker inspect mysql

 程序设置的ip:docker inspect hh

 5、测试

三、DockerCompose快速部署

手动部署项目太麻烦了,而Docker Compose就可以帮助我们实现多个相互关联的Docker容器的快速部署。它允许用户通过一个单独的 docker-compose.yml 模板文件(YAML 格式)来定义一组相关联的应用容器。

docker-compose.yml文件的基本语法可以参考官方文档:

Compose file version 3 reference | Docker Docs

docker-compose文件中可以定义多个相互关联的应用容器,每一个应用容器被称为一个服务(service)。由于service就是在定义某个应用的运行时参数,因此与docker run参数非常相似。

举例来说,用docker run部署MySQL的命令如下:

docker run -d \--name mysql \-p 3306:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123 \-v ./mysql/data:/var/lib/mysql \-v ./mysql/conf:/etc/mysql/conf.d \-v ./mysql/init:/docker-entrypoint-initdb.d \--network hmallmysql

如果用docker-compose.yml文件来定义,就是这样:

version: "3.8"services:mysql:image: mysqlcontainer_name: mysqlports:- "3306:3306"environment:TZ: Asia/ShanghaiMYSQL_ROOT_PASSWORD: 123volumes:- "./mysql/conf:/etc/mysql/conf.d"- "./mysql/data:/var/lib/mysql"networks:- new
networks:new:name: hmall

 参数说明:

docker run 参数

docker compose 指令

说明

--name

container_name

容器名称

-p

ports

端口映射

-e

environment

环境变量

-v

volumes

数据卷配置

--network

networks

网络

 如图所示:

编写好docker-compose.yml文件,就可以部署项目了。常见的命令:

Overview of docker compose CLI | Docker Docs

基本语法
docker compose [OPTIONS] [COMMAND]

类型

参数或指令

说明

Options

-f

指定compose文件的路径和名称

-p

指定project名称。project就是当前compose文件中设置的多个service的集合,是逻辑概念

Commands

up

创建并启动所有service容器

down

停止并移除所有容器、网络

ps

列出所有启动的容器

logs

查看指定容器的日志

stop

停止容器

start

启动容器

restart

重启容器

top

查看运行的进程

exec

在指定的运行中容器中执行命令

 docker-compose.yml文件示例:

version: "3.8"services:mysql:image: mysqlcontainer_name: mysqlports:- "3306:3306"environment:TZ: Asia/ShanghaiMYSQL_ROOT_PASSWORD: 123volumes:- "./mysql/conf:/etc/mysql/conf.d"- "./mysql/data:/var/lib/mysql"- "./mysql/init:/docker-entrypoint-initdb.d"networks:- hm-nethmall:build: context: .dockerfile: Dockerfilecontainer_name: hmallports:- "8080:8080"networks:- hm-netdepends_on:- mysqlnginx:image: nginxcontainer_name: nginxports:- "18080:18080"- "18081:18081"volumes:- "./nginx/nginx.conf:/etc/nginx/nginx.conf"- "./nginx/html:/usr/share/nginx/html"depends_on:- hmallnetworks:- hm-net
networks:hm-net:name: hmall

 示例:

# 1.进入root目录
cd /root# 2.删除旧容器
docker rm -f $(docker ps -qa)# 3.删除hmall镜像
docker rmi hmall# 4.清空MySQL数据
rm -rf mysql/data# 5.启动所有, -d 参数是后台启动
docker compose up -d
# 结果:
[+] Building 15.5s (8/8) FINISHED=> [internal] load build definition from Dockerfile                                    0.0s=> => transferring dockerfile: 358B                                                    0.0s=> [internal] load .dockerignore                                                       0.0s=> => transferring context: 2B                                                         0.0s=> [internal] load metadata for docker.io/library/openjdk:11.0-jre-buster             15.4s=> [1/3] FROM docker.io/library/openjdk:11.0-jre-buster@sha256:3546a17e6fb4ff4fa681c3  0.0s=> [internal] load build context                                                       0.0s=> => transferring context: 98B                                                        0.0s=> CACHED [2/3] RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo   0.0s=> CACHED [3/3] COPY hm-service.jar /app.jar                                           0.0s=> exporting to image                                                                  0.0s=> => exporting layers                                                                 0.0s=> => writing image sha256:32eebee16acde22550232f2eb80c69d2ce813ed099640e4cfed2193f71  0.0s=> => naming to docker.io/library/root-hmall                                           0.0s
[+] Running 4/4✔ Network hmall    Created                                                             0.2s✔ Container mysql  Started                                                             0.5s✔ Container hmall  Started                                                             0.9s✔ Container nginx  Started                                                             1.5s# 6.查看镜像
docker compose images
# 结果
CONTAINER           REPOSITORY          TAG                 IMAGE ID            SIZE
hmall               root-hmall          latest              32eebee16acd        362MB
mysql               mysql               latest              3218b38490ce        516MB
nginx               nginx               latest              605c77e624dd        141MB# 7.查看容器
docker compose ps
# 结果
NAME                IMAGE               COMMAND                  SERVICE             CREATED             STATUS              PORTS
hmall               root-hmall          "java -jar /app.jar"     hmall               54 seconds ago      Up 52 seconds       0.0.0.0:8080->8080/tcp, :::8080->8080/tcp
mysql               mysql               "docker-entrypoint.s…"   mysql               54 seconds ago      Up 53 seconds       0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp
nginx               nginx               "/docker-entrypoint.…"   nginx               54 seconds ago      Up 52 seconds       80/tcp, 0.0.0.0:18080-18081->18080-18081/tcp, :::18080-18081->18080-18081/tcp

http://www.dtcms.com/wzjs/810448.html

相关文章:

  • 网站建设专业就业前景wordpress企业站实例
  • 企业门户网站建设报告网络推广入门教程
  • 广告网站怎么设计制作开发一个微信公众号多少钱
  • 虚拟机做网站安全吗宜昌住房和城乡建设厅网站
  • 英文网站怎么做推广门户网站建设招标方
  • 国内做网上旅游业务的网站最热门网页游戏排行榜
  • 平台网站怎么推广教育培训东莞网站建设
  • 北京的制作网站的公司有哪些集团网站网页模板
  • 浙江响应式网站建设公司wordpress装修模板制作
  • 烟台做网站的山西电力建设三公司网站
  • 临沂莒南网站建设电商店铺
  • 沈阳建站模板展示淄博网站制作企业高端
  • 程序员做的导航网站网站建设招标文件范本
  • 高端医院网站建设wordpress工作室模板
  • 做站群一个网站多少钱峰峰网站建设
  • dw和sql做网站扫码进入网站 怎么做
  • 那个网站系统好福建巢网站建设
  • 个人电脑做外网网站网页微博超话签到
  • 花的网站建设规划书求个网站2022
  • 怎么才能访问自己做的网站陕西西乡网站建设
  • 如何用阿里云做网站抖音logo在线设计生成器免费
  • 藁城网站建设哪家好wordpress cache9 korea cdn
  • 在百度建免费网站宁波品牌网站建设服务电话
  • iis网站伪静态用手机如何做网站
  • 网站推荐你懂我的意思吧知乎东营网约车
  • 微网站的链接怎么做的网站开发与程序开发
  • 网站建设 网站开发 区别app推广联盟
  • 电商网站的二级菜单怎么做点评网页设计作业
  • 网站开发搭建如何建立营销型网站
  • 网站建设公司巨头最好的微网站建设公司推荐