中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

docker中怎么部署一個(gè)java和mysql的獨(dú)立項(xiàng)目環(huán)境

docker中怎么部署一個(gè)java和MySQL的獨(dú)立項(xiàng)目環(huán)境,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)專注于隆化企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),購(gòu)物商城網(wǎng)站建設(shè)。隆化網(wǎng)站建設(shè)公司,為隆化等地區(qū)提供建站服務(wù)。全流程定制制作,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

首先我希望將jar打包到docker中,不用每次拷來拷去,也可以用文件夾,提前定義一個(gè)文件夾,把jar包放進(jìn)去docker啟動(dòng)時(shí)自動(dòng)啟動(dòng)jar包。

打包需要用到dockerfile文件,在運(yùn)行目錄下創(chuàng)建Dockerfile配置如下:

FROM openjdk:8-jdk-alpine
ENV LANG C.UTF-8
RUN apk --update add ttf-dejavu && \
      rm -rf /var/cache/apk/*
MAINTAINER "haolin#189.cn"
LABEL description="suishoupai backend"
WORKDIR app
ADD ruoyi-admin.jar /app/app.jar
EXPOSE 8081
CMD java -jar /app/app.jar

FROM openjdk:8-jdk-alpine 是說我們用的基礎(chǔ)鏡像是openjdk發(fā)布的8-jdk-alpine包,用alpine linux打包的。

ENV LANG C.UTF-8 是說我們要采用UTF-8環(huán)境

RUN apk --update add ttf-dejavu && \  rm -rf /var/cache/apk/*
是安裝字體庫(kù)并刪除緩存的安裝包,字體庫(kù)是用來生成驗(yàn)證碼等功能使用。

MAINTAINER 、LABEL description ,請(qǐng)自行設(shè)置
WORKDIR app工作目錄這個(gè)不需要修改

ADD test-admin.jar /app/app.jar 添加jar包到鏡像中,如果是開發(fā)環(huán)境可以放在目錄里,跟打包進(jìn)去是一樣的。

CMD java -jar /app/app.jar 啟動(dòng)jar包,按照自己的需要設(shè)置啟動(dòng)參數(shù)。

完成之后執(zhí)行docker build -t 用戶名/鏡像名:1.01 . 就可以完成鏡像封裝了

通過docker image ls查看鏡像就能看到打好的鏡像包。

打包完java鏡像之后就需要打包mysql鏡像了,首先在運(yùn)行目錄下創(chuàng)建docker-compose.yaml。

想讓兩個(gè)docker共用一個(gè)ip,我覺得通過docker-compose配置更清晰,主要思路是創(chuàng)建兩個(gè)service:

  • 一個(gè)app服務(wù)使用我們的java鏡像,網(wǎng)絡(luò)模式設(shè)置為service:mysql就可以使用mysql的網(wǎng)卡,

  • 一個(gè)mysql服務(wù),使用mysql:5.7這里需要注意默認(rèn)的mysql使用的編碼方式不支持中文,需要配置,并設(shè)置時(shí)區(qū):

command:
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
      --max_allowed_packet=128M
      --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
  environment:
   TZ: Asia/Shanghai

而后可以有選擇的配置要?jiǎng)?chuàng)建的數(shù)據(jù)庫(kù)名、root密碼等。

最后將mysql的data目錄映射到項(xiàng)目目錄下的data目錄,并將app中的端口發(fā)布出來。共外界訪問。

配置完成之后通過:

  1. docker-compose up創(chuàng)建鏡像

  2. 通過docker-compose start啟動(dòng)鏡像

  3. 通過docker-compose stop停止鏡像

  4. docker-compose down刪除鏡像。

   啟動(dòng)后可以通過docker ps查看已啟動(dòng)的服務(wù),或者通過docker ps -a查看所有服務(wù)。

完整配置文件。如下:

version: '3'
services:
 app:
  container_name: XXXX_app
  image: haol666/XXXX:1.01
  network_mode: "service:mysql"
  depends_on:
   - mysql
 mysql:
  container_name: xxxx_mysql
  image: mysql:5.7
  command:
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
      --max_allowed_packet=128M
      --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
  environment:
   TZ: Asia/Shanghai
   MYSQL_DATABASE: XXXX
   MYSQL_ROOT_PASSWORD: XXXX
   MYSQL_USER: 'XXXX'
   MYSQL_PASS: 'XXXX'
   MYSQL_HOST: '%'
  volumes:
   - ./data:/var/lib/mysql
  ports:
   - "8080:443"
  expose:
   - "8080"


 

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。

分享文章:docker中怎么部署一個(gè)java和mysql的獨(dú)立項(xiàng)目環(huán)境
鏈接地址:http://www.rwnh.cn/article4/jijpoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)企業(yè)建站、微信小程序企業(yè)網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
平遥县| 资溪县| 常州市| 马鞍山市| 临邑县| 西充县| 积石山| 手机| 武陟县| 麦盖提县| 博湖县| 南昌市| 商丘市| 泰顺县| 渭南市| 天长市| 潼关县| 凯里市| 林州市| 高密市| 城步| 维西| 富锦市| 永年县| 揭阳市| 宝清县| 改则县| 康平县| 临汾市| 临汾市| 桦甸市| 石林| 凤山市| 宜良县| 泸州市| 科技| 南澳县| 凉城县| 伊宁县| 孟州市| 鸡泽县|