最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

IDEA部署Docker鏡像的實現(xiàn)示例

 更新時間:2023年04月28日 09:05:54   作者:摘星辰  
本文主要介紹了IDEA部署Docker鏡像的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

Docker

開啟虛擬機(jī),打開 finalshell 客戶端

  • 開啟docker service docker start

鏡像操作

  • 查看鏡像 docker images
  • 搜索鏡像 docker serarch 鏡像名
  • 拉取鏡像 docker pull 鏡像名:標(biāo)簽號 例如: docker pull mysql:5.7.26
  • 刪除鏡像 docker rmi 鏡像ID/名稱

容器操作

  • 查詢?nèi)萜?docker ps , 查看所有容器docker ps -a

  • 刪除容器 docker rm 容器ID/容器名

  • 開啟容器 docker start 容器ID/容器名

  • 停止容器 docker stop 容器ID/容器名

  • 進(jìn)入容器操作 docker exec -it 容器ID bash

  • 查看容器日志 docker logs Name/ID

  • 拷貝文件到宿主機(jī) docker cp -a bb397b55cde0:/tmp/ /tmp

  • 拷貝文件到容器 docker cp -a /tmp bb397b55cde0:/tmp/

開啟Docker的遠(yuǎn)程連接

  • 編輯文件 docker.service

    vi /usr/lib/systemd/system/docker.service

    找到 ExecStart=/usr/bin/dockerd這一行

    將其改為如下內(nèi)容:

    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

  • 重新加載配置文件

    systemctl daemon-reload

  • 重啟docker

    systemctl restart docker

  • 查看 2375 端口是否開放

    netstat -nlpt

    也可以直接訪問 curl http://127.0.0.1:2375/info,如果有返回信息,則已開放

IDEA 下載 插件

PS:總覺得這個插件有bug,如在 容器里設(shè)置了參數(shù)不生效。。。

在 Settings->Plugins->Marketplace 搜索 docker

image-20201216155142769

安裝完重啟 IDEA

然后在 Settings 里搜索 docker ,配置上docker 地址,下面顯示 successful 即連接成功

image-20201216155406515

在 IDEA 頁面的下面 有個 docker 的按鈕,點開可以看到docker里所有的容器,所有的鏡像

image-20201216155742277

IDEA 推送鏡像

首先maven clean 清理本地代碼

maven package 打包本地項目,生成 jar

在 DockerFile 頁面,編輯

image-20201216160324772

/usr/share/fonts/dejavu/

如果需要 docker里的mysql ,則 在配置文件里 這樣寫即可:

url: jdbc:mysql://mysql:3306/DBname?characterEncoding=utf8&useSSL=false&allowMultiQueries=true&serverTimezone=Asia/Shanghai

點擊運(yùn)行就可以將上面生成的 jar 打包成 docker 鏡像,并上傳到 docker 里。

如果項目依賴較多,需要較長時間

在IDEA 控制臺就可以看到上傳成功的 鏡像,可以新建容器,運(yùn)行

在IDEA 控制臺也可以配置 容器的參數(shù),比如端口映射,掛載文件,啟動日志等,十分方便。

就醬,后臺項目就啟動完成了,物理機(jī)訪問虛擬機(jī)ip 加上映射出來的端口號就可以訪問到接口了

不過,僅能訪問后臺接口不是我們最終要的效果,得有界面??!

安裝MySQL

  • 拉取鏡像docker pull mysql:5.7.26

  • 啟動docker run -p 3306:3306 --name mysql:5.7.26 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.26

  • 配置外網(wǎng)訪問

    進(jìn)入容器 docker exec -it 47e74a93cf87 bash

    登錄mysql -uroot -p輸入密碼

    命令 grant all privileges on *.* to root@"%" identified by "123456" with grant option;

    刷新 flush privileges;

    之后就可以我們就可以在物理機(jī)上通過nvicate 來連接上。

安裝nginx

拉取鏡像: docker pull nginx

查看鏡像: docker images

在宿主機(jī)創(chuàng)建配置文件目錄

mkdir -p /data/nginx/{conf,conf.d,html,log}

nginx.conf

#user  nobody;
worker_processes  1;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;
    server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            index  index.html index.htm;
            root /usr/share/nginx/html;
             charset utf-8;
              try_files $uri $uri/ /index.html;
        }
        	location ^~/api/ {
              proxy_pass http://192.168.1.130:8080/;
        }
        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>docker搭建nginx</title>
</head>
<body>
    <h1>docker搭建nginx映射成功</h1>
</body>
</html>

啟動并掛載配置文件目錄

docker run --name my_nginx -d -p 80:80 -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/log:/var/log/nginx -v /data/nginx/html:/usr/share/nginx/html nginx

在物理機(jī)訪問 虛擬機(jī)ip ,看是否成功

重啟nginxdocker restart 容器ID

部署項目

  • 將前端項目,build ,將生成的 dist 文件夾里的內(nèi)容上傳到 html 目錄
  • 在 nginx.conf 配置文件里配置后臺接口地址
  • 訪問nginx 服務(wù)器ip,測試是否可以訪問。

遠(yuǎn)程訪問

經(jīng)過上面的操作,我們已經(jīng)可以在本地跑起來idea 里的項目了,在idea控制臺也可以直接看到項目的運(yùn)行日志。

那么,如果我們要給領(lǐng)導(dǎo)或者客戶看項目的進(jìn)度怎么辦?

可以使用 內(nèi)網(wǎng)穿透,將局域網(wǎng)的 ip 映射出去。

之前使用的 ngrok.cc, 免費(fèi)的總是斷,體驗不是很好。推薦一個穩(wěn)定點的。utools,里面有內(nèi)網(wǎng)穿透的功能,目前來說還是挺快挺好用的。

使用界面如下圖所示:

完結(jié)撒花~~

image-20201216180509153

Docker 容器中文字體亂碼問題

?在宿主機(jī)內(nèi)安裝中文字體

查看已經(jīng)安裝的中文字體 fc-list :lang=zh

如果沒有這個命令,安裝上 yum -y install fontconfig

將Windows 上的 C:\Windows\Fonts 文件夾下的字體文件上傳到 服務(wù)器目錄 /usr/share/fonts/dejavu/

?比如 : 宋體字 (simsun.ttc)

清除緩存 fc-cache

然后在需要中文字體的容器里掛載宿主機(jī)的 字體文件, ==,冒號前為宿主主機(jī)目錄,冒號后為容器對應(yīng)目錄==

docker run -p 80:80--name demo -v /usr/share/fonts/dejavu/:/usr/share/fonts/

到此這篇關(guān)于IDEA部署Docker鏡像的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)IDEA部署Docker鏡像內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java線程池使用場景及一些建議

    java線程池使用場景及一些建議

    本文主要介紹了java線程池使用場景及一些建議,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Java多線程用法的實例詳解

    Java多線程用法的實例詳解

    這篇文章主要介紹了Java多線程用法的實例詳解的相關(guān)資料,希望通過本文大家能夠理解掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-09-09
  • Spring源碼解析后置處理器梳理總結(jié)

    Spring源碼解析后置處理器梳理總結(jié)

    這篇文章主要介紹了Spring源碼解析后置處理器梳理總結(jié),在前面幾篇文章中梳理了Spring中bean的創(chuàng)建過程,在這個過程中各式各樣的后置處理器發(fā)揮了不同的作用,可以說后置處理器貫穿了bean的實例化以及初始化過程
    2022-07-07
  • IntelliJ IDEA(2019)安裝破解及HelloWorld案例(圖文)

    IntelliJ IDEA(2019)安裝破解及HelloWorld案例(圖文)

    這篇文章主要介紹了IntelliJ IDEA(2019)安裝破解及HelloWorld案例(圖文),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Struts2中接收表單數(shù)據(jù)的三種驅(qū)動方式

    Struts2中接收表單數(shù)據(jù)的三種驅(qū)動方式

    這篇文章簡單給大家介紹了Struts2中接收表單數(shù)據(jù)的三種驅(qū)動方式,非常不錯,具有參考借鑒價值,需要的的朋友參考下吧
    2017-07-07
  • 深入理解什么是Mybatis懶加載(延遲加載)

    深入理解什么是Mybatis懶加載(延遲加載)

    這篇文章主要介紹了深入理解什么是Mybatis懶加載(延遲加載),mybatis的懶加載,也稱為延遲加載,是指在進(jìn)行關(guān)聯(lián)查詢的時候,按照設(shè)置延遲規(guī)則推遲對關(guān)聯(lián)對象的select查詢,延遲加載可以有效的減少數(shù)據(jù)庫壓力,需要的朋友可以參考下
    2023-10-10
  • springboot集成screw反向生成數(shù)據(jù)庫說明文檔

    springboot集成screw反向生成數(shù)據(jù)庫說明文檔

    screw是一個一鍵式生成數(shù)據(jù)庫文檔的開源工具包,目前screw可以生成word、md和html格式類的文檔,本文主要來講講如何通過screw反向生成數(shù)據(jù)庫說明文檔,感興趣的可以了解下
    2025-01-01
  • 簡單了解Java多線程實現(xiàn)的四種方式

    簡單了解Java多線程實現(xiàn)的四種方式

    這篇文章主要介紹了簡單了解Java多線程實現(xiàn)的四種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • 簡單理解Spring之IOC和AOP及代碼示例

    簡單理解Spring之IOC和AOP及代碼示例

    這篇文章主要介紹了簡單理解Spring之IOC和AOP及代碼示例,具有一定參考價值,需要的朋友可以了解下。
    2017-12-12
  • SpringCloud搭建Eureka服務(wù)模塊的過程

    SpringCloud搭建Eureka服務(wù)模塊的過程

    Eureka在分布式系統(tǒng)中起到了連接各個微服務(wù)的紐帶作用,使得服務(wù)之間的交互變得更加靈活、可靠,本文將深入探討如何使用Spring?Cloud,逐步引導(dǎo)讀者完成Eureka服務(wù)模塊的搭建,感興趣的朋友跟隨小編一起看看吧
    2024-02-02

最新評論

扬中市| 武功县| 泸水县| 遵化市| 广昌县| 安平县| 德江县| 巴林左旗| 新宾| 双城市| 长葛市| 合作市| 铜川市| 大洼县| 科技| 鹤岗市| 鲁山县| 兴仁县| 南宁市| 康乐县| 三原县| 兴义市| 南部县| 大兴区| 焉耆| 新田县| 镇安县| 双城市| 桓仁| 青海省| 潢川县| 安泽县| 隆子县| 汶川县| 安丘市| 武汉市| 修水县| 望奎县| 墨玉县| 宁德市| 历史|