欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

手把手帶大家通過Docker部署前后端分離項目(親測可用)

 更新時間:2023年06月01日 11:48:22   作者:黃團團  
近年來前后端分離已經(jīng)成為中大型軟件項目開發(fā)的最佳實踐,下面這篇文章主要給大家介紹了關(guān)于通過Docker部署前后端分離項目的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

前言:

這里我用的是阿里云的服務(wù)器,環(huán)境是CentOS7!

分享一些自己在學(xué)習(xí)路上的一些筆記,歡迎大家共同交流與探討!

自己搭建了一個Java開發(fā)的免費資源的共享網(wǎng)站,僅用于交流與學(xué)習(xí)!

地址如下:免費資源共享網(wǎng)站

一、安裝Docker

1、安裝:

yum install docker 

2、啟動/停止/重啟docker服務(wù)

service docker start 
service docker stop 
service docker restart 

3、查看docker版本信息

docker version

4、運行helloword,因為不存在此鏡像,docker會自動下載運行本鏡像

docker run hello-world

5、查看所有docker鏡像

docker images

二、安裝Nginx

1、拉取Nginx鏡像文件

docker pull nginx

2、查看下載好的鏡像文件  

docker images

3、創(chuàng)建并運行Nginx容器

docker run -d --name nginx01 -p 3344:80 nginx
命令詳解:
# docker run 啟動一個鏡像
# -d 表示后臺允許
# --name nginx01  表示為當(dāng)前容器起一個別名
# -p 3344:80 表示將本機的3344端口映射到nginx鏡像的80端口

4、查看正在運行的容器

docker ps

5、查看Nginx是否部署成功

curl localhost:3344

拓展

1、進入Nginx容器當(dāng)中

docker exec -it nginx01 /bin/bash
命令詳解:
# docker exec 在運行的容器中執(zhí)行命令
# -i 以交互模式運行容器,通常與 -t 同時使用;例如-it
# -t 為容器重新分配一個偽輸入終端,通常與 -i 同時使用;例如-it
# nginx01 容器名
# /bin/bash 其實就是表示載入容器后運行bash(命令語言解釋程序), 因為docker中必須要保持一個進程(運行的程序)的運行,要不然整個容器就會退出,所以說,bash就擔(dān)任起了docker中運行的那個進程的角色!
#而/bin/bash則是bash在linux下的位置

2、在容器中查詢出nginx的相關(guān)配置文件存放位置

whereis nginx

3、退出容器,回到本地linux系統(tǒng)

exit

4、停止并移除Nginx容器

docker stop bedfd2a72585 #停止容器
docker rm bedfd2a72585 #移除容器
# bedfd2a72585表示容器的ID,即:CONTAINER ID

5、本地創(chuàng)建管理目錄

mkdir -p /data/nginx
mkdir -p /data/nginx/www 
mkdir -p /data/nginx/conf
mkdir -p /data/nginx/logs

6、將容器中的相應(yīng)文件copy到剛創(chuàng)建的管理目錄中

docker cp bedfd2a72585:/etc/nginx/nginx.conf /data/nginx/
docker cp bedfd2a72585:/etc/nginx/conf.d /data/nginx/conf/
docker cp bedfd2a72585:/usr/share/nginx/html/ /data/nginx/www/
docker cp bedfd2a72585:/var/log/nginx/ /data/nginx/logs/
注:docker cp bedfd2a72585中的 "bedfd2a72585" 為容器ID(docker ps可查看)

7、再次啟動容器并作目錄掛載

docker run --name nginx -p 80:80 -v /data/nginx/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/www/:/usr/share/nginx/html/ -v /data/nginx/logs/:/var/log/nginx/ -v /data/nginx/conf/:/etc/nginx/conf.d --privileged=true -d nginx
ps:-p 80:80 端口進行映射,將本地 80端口映射到容器內(nèi)部的 80 端口。

三、安裝Mysql

1、下拉mysql鏡像文件

docker pull mysql  #默認最新版本
docker pull mysql:xxx  #指定版本號

2、查看當(dāng)前鏡像

docker images

3、啟動mysql容器

第一種:
docker run --name mysql01 -d -p 3310:3306 -e MYSQL_ROOT_PASSWORD=root mysql
命令詳解:
# --name 自定義容器名稱
# -d 后臺運行
# -p 指定映射的端口號
# -e MYSQL_ROOT_PASSWORD=root 數(shù)據(jù)庫密鑰
第二種:
docker run --restart=always --privileged=true -d -v /home/mysql/data:/var/lib/mysql -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/my.cnf:/etc/mysql/my.cnf -p 3311:3306 --name mysql02 -e MYSQL_ROOT_PASSWORD=root mysql
--restart=always 代表開啟啟動
--privileged=true 代表進入容器內(nèi)部為管理員身份
-d 表示后臺運行容器 并返回容器Id
-v 把mysql產(chǎn)生的數(shù)據(jù)同步到本地 防止數(shù)據(jù)丟失
-e 容器傳參  設(shè)置mysql的初始密碼

4、查看正在運行的容器

docker ps

5、測試數(shù)據(jù)庫連接

四、部署SpringBoot項目

1、整合后端成Jar包并編寫Dockerfile文件

2、Dockerfile內(nèi)容詳解

FROM java:8  #工程java版本
COPY *.jar /app.jar  #將所有的jar包整合為app.jar
EXPOSE 9099  #暴露后端端口號
ENTRYPOINT ["java","-jar","app.jar"]  #執(zhí)行jar包

3、將文件上傳到Linux服務(wù)器上面,必須放在同級目錄一起!

4、構(gòu)建鏡像

docker build -t api .  #點千萬別漏了,這里取名鏡像為api,可以隨便取名!

5、查看當(dāng)前鏡像

docker images

6、創(chuàng)建一個新的容器并運行

docker run -d -p 9099:9099 --name httapi api 
#將9099端口映射到9099端口,端口記得放開
#httapi為自定義容器名字
#api是鏡像名字

7、查看正在運行的容器

docker ps

8、使用postman測試接口

五、部署Vue項目

1、打包Vue工程并同時編寫default.conf文件和Dockerfile文件

2、default.conf文件和Dockerfile文件詳細

default.conf配置

server {
    listen       80;
    server_name  ip地址; # 修改為docker服務(wù)宿主機的ip
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html =404;
    }
     location /api {
      proxy_pass http://ip地址:端口號/;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

 Dockerfile配置

# 基礎(chǔ)鏡像使用Nginx
FROM nginx
# 作者
MAINTAINER htt
# 添加時區(qū)環(huán)境變量,亞洲,上海
ENV TimeZone=Asia/Shanghai
# 將前端dist文件中的內(nèi)容復(fù)制到nginx目錄
COPY dist  /usr/share/nginx/html/
# 用本地的nginx配置文件覆蓋鏡像的Nginx配置
COPY default.conf /etc/nginx/conf.d
# 暴露端口
EXPOSE 80

3、上傳這三個文件到Linux服務(wù)器的同一個文件夾當(dāng)中,務(wù)必放在一起!

4、構(gòu)建鏡像

docker build -t vue . #點千萬別漏了,這里取名鏡像為vue,可以隨便取名!

 5、查看當(dāng)前鏡像

docker images

 ??????6、創(chuàng)建一個新的容器并運行

docker run -d -p 8088:80 --name httvue vue 
#將8088端口映射到80端口,端口記得放開
#httvue為自定義容器名字
#vue是鏡像名字

7、查看正在運行的容器

docker ps

8、訪問前端頁面并測試接口

總結(jié)

到此這篇關(guān)于通過Docker部署前后端分離項目的文章就介紹到這了,更多相關(guān)Docker部署前后端分離項目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳細講解Docker虛擬化

    詳細講解Docker虛擬化

    本文詳細講解了Docker的虛擬化,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 如何在Docker中部署運行jar

    如何在Docker中部署運行jar

    這篇文章主要介紹了如何在Docker中部署運行jar問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • docker中間件部署超詳細步驟

    docker中間件部署超詳細步驟

    docker是現(xiàn)在很火的一項容器技術(shù),能夠幫助來部署我們來快速部署各類環(huán)境,這篇文章主要介紹了docker中間件部署的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-03-03
  • 淺談關(guān)于Docker容器互聯(lián)的初步實踐

    淺談關(guān)于Docker容器互聯(lián)的初步實踐

    這篇文章主要介紹了淺談關(guān)于Docker容器互聯(lián)的初步實踐,本文介紹了使用網(wǎng)橋(bridge)來對容器進行互聯(lián),非常具有實用價值,需要的朋友可以參考下
    2018-10-10
  • 在Docker Compose中獲取最新鏡像的多種方法總結(jié)

    在Docker Compose中獲取最新鏡像的多種方法總結(jié)

    Docker 鏡像是 Docker 容器的基礎(chǔ),鏡像包含了應(yīng)用程序所需的所有文件和依賴,Docker-Compose 默認不會自動拉取最新的鏡像版本,這可能會導(dǎo)致使用過時的鏡像,從而錯過重要的更新,為了確保 Docker-Compose 始終使用最新的鏡像,我們可以采用多種方法,以下將詳細介紹這些方法
    2024-08-08
  • centos7搭建docker私人倉庫的方法(kubernetes)

    centos7搭建docker私人倉庫的方法(kubernetes)

    這篇文章主要介紹了centos7搭建docker私人倉庫的方法(kubernetes),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • Docker+nacos+seata1.3.0安裝與使用配置教程

    Docker+nacos+seata1.3.0安裝與使用配置教程

    這篇文章主要介紹了Docker+nacos+seata1.3.0安裝與使用配置教程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-07-07
  • 使用docker+devpi搭建本地pypi源的方法

    使用docker+devpi搭建本地pypi源的方法

    這篇文章主要介紹了使用docker+devpi搭建本地pypi源的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • Docker離線部署geoserver的思路詳解

    Docker離線部署geoserver的思路詳解

    這篇文章主要介紹了Docker離線部署geoserver的思路詳解,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • 詳細docker-maven-plugin使用方法

    詳細docker-maven-plugin使用方法

    本文主要介紹了詳細docker-maven-plugin使用方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09

最新評論