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

Windows環(huán)境GeoServer打包Docker的方法實現(xiàn)

 更新時間:2024年12月23日 09:16:14   作者:AIGIS.  
本文介紹了在Windows環(huán)境下將GeoServer打包為Docker鏡像,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1.前言

在 Windows 環(huán)境下將 GeoServer 打包為 Docker,可以實現(xiàn)跨平臺一致性、簡化環(huán)境配置、快速部署與恢復(fù),同時便于擴(kuò)展集成和版本管理,并通過資源隔離提高系統(tǒng)穩(wěn)定性。由于近期需要在Docker中使用GeoServer,就折騰了一下Docker,也踩了一些GeoServer打包Docker的坑,尤其是在Windows環(huán)境下Docker的打包,索性記錄一下。

2.安裝Docker

直接在Docker官網(wǎng)https://www.docker.com/products/docker-desktop/下載最新版本的Docker Desktop,我下載的是Docker Desktop4.28.0,其中包含的Docker的版本是25.0.3,Docker-Compose的版本是2.24.6。注意不要混淆DockerDocker Desktop。如果是低版本的Docker Desktop,那就需要自己手動安裝Docker-Compose了。

在這里插入圖片描述

在這里插入圖片描述

配置一下Docker訪問中國鏡像源

在這里插入圖片描述

{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": false,
  "registry-mirrors": [
    "http://f1361db2.m.daocloud.io",
    "https://registry.docker-cn.com"
  ]
}

配置完畢之后在cmd輸入docker version確認(rèn)一下是否安裝成功了。

在這里插入圖片描述

3.準(zhǔn)備Dockerfile

準(zhǔn)確的來說這一步應(yīng)該叫做準(zhǔn)備鏡像所需的各種文件,包括GeoServer、Dockerfile、和jdk的環(huán)境,注意,jdk得是linux環(huán)境下的版本。我準(zhǔn)備的GeoServer的版本是geoserver-2.22.5jdk的環(huán)境是jdk1.8.

在這里插入圖片描述

最重要的就是Dockerfile怎么寫?下面直接給出示例,都加上了注釋,相信不難理解了。

# 使用基礎(chǔ)鏡像
FROM ubuntu:20.04

# 設(shè)置環(huán)境變量
ENV JAVA_HOME=/usr/local/jdk8
ENV PATH=$JAVA_HOME/bin:$PATH

# 將 Jetty 的默認(rèn)端口(通常是8080)暴露出來
EXPOSE 8080

# 復(fù)制并解壓 JDK
COPY jdk-8u191-linux-x64.tar.gz /usr/local/
RUN tar -xzf /usr/local/jdk-8u191-linux-x64.tar.gz -C /usr/local/ \
    && mv /usr/local/jdk1.8.0_191 $JAVA_HOME \
    && rm /usr/local/jdk-8u191-linux-x64.tar.gz

# 復(fù)制 GeoServer 文件夾到鏡像中
COPY geoserver-2.22.5-bin /usr/local/geoserver-2.22.5-bin

# 設(shè)置工作目錄
WORKDIR /usr/local/geoserver-2.22.5-bin/bin

# 給啟動腳本增加執(zhí)行權(quán)限
RUN chmod +x /usr/local/geoserver-2.22.5-bin/bin/startup.sh

# 設(shè)置容器啟動時的默認(rèn)命令
CMD ["./startup.sh"]

4.拉取linux環(huán)境

因為我們是基于ubuntu:20.04來打包docker的,因此在打包時會自動去拉取ubuntu:20.04,為了防止失敗,我們先手動拉取一下ubuntu:20.04

在這里插入圖片描述

等待拉取完畢后,我們使用docker images命令確認(rèn)一下是否存在ubuntu的鏡像了。

在這里插入圖片描述

5.打包鏡像

這一步?jīng)]什么好說的了,直接在Dockerfile所在的路徑執(zhí)行打包命令就行了,我的機(jī)器不知道為什么不識別-t命令,-t--tag的簡寫,既然不支持簡寫,那我就寫完了吧。唯一注意的地方是打包命令最后面的點不要忘了,表示在當(dāng)前目錄查找文件。

docker build --tag geoserver:2.22.6 .

在這里插入圖片描述

現(xiàn)在使用docker images命令看一下是否存在打包好的文件了。

在這里插入圖片描述

6.數(shù)據(jù)掛載

好了,現(xiàn)在已經(jīng)打包完成了,還差最重要的一步。gis中涉及的影像數(shù)據(jù)都很大,動不動上百個G,shp文件也要經(jīng)常變動,所以它們是不可能打包到docker里的,那么怎么讓docker能夠訪問到機(jī)器上的這些文件呢?那就是使用數(shù)據(jù)掛載。

首先我們新建兩個數(shù)據(jù)卷。一個掛載data_dir文件夾,一個掛載lib文件夾。因為這兩個文件夾里內(nèi)容經(jīng)常要變動。注意在windows上創(chuàng)建的數(shù)據(jù)卷在linux路徑下才能找得到。

docker volume create geoserver_data_dir
docker volume create geoserver_lib

在這里插入圖片描述

這兩個路徑和GeoServer的路徑的對應(yīng)關(guān)系如下:

在這里插入圖片描述

將右邊兩個文件里的全部內(nèi)容拷貝到左邊對應(yīng)文件夾的_data文件夾里,注意:_data這個文件夾是docker自動創(chuàng)建的。

在這里插入圖片描述

好了,拷貝完畢,現(xiàn)在可以啟動鏡像并指定數(shù)據(jù)掛載了。

docker run --name geoserver -d -p 8080:8080 \
-v geoserver_data_dir:/usr/local/geoserver-2.22.5-bin/data_dir \
-v geoserver_lib:/usr/local/geoserver-2.22.5-bin/webapps/geoserver/WEB-INF/lib \
geoserver:2.22.5

由于windowscmd里不能多行輸入,我就干脆寫為一行了。

在這里插入圖片描述

docker desktop里看到已經(jīng)啟動了,點擊端口號在瀏覽器打開訪問一下。

在這里插入圖片描述

在這里插入圖片描述

6.測試數(shù)據(jù)掛載

現(xiàn)在我想拓展一下mysql的連接,先看一下數(shù)據(jù)存儲里是沒有mysql的選項的。

在這里插入圖片描述

現(xiàn)在我們把mysql的插件安裝一下,拷貝插件的jar包到我們的掛載路徑geoserver_lib下。

在這里插入圖片描述

重啟鏡像

docker container geoserver restart

在這里插入圖片描述

nice,出現(xiàn)了mysql,說明數(shù)據(jù)掛載OK了。

7.總結(jié)

本文中我們探討了Windows平臺上GeoServerDocker打包,以及數(shù)據(jù)掛載,最后進(jìn)行了測試,表明我們的Docker打包是成功的。需要注意的是Docker命令有時不能識別簡寫形式的命令,那就寫全。另外數(shù)據(jù)掛載可以使用普通的數(shù)據(jù)卷,也可以直接掛載一個目錄。但是我掛載目錄后,在訪問時出現(xiàn)了資源訪問不到的問題。估計是windows的路徑問題導(dǎo)致的,linux上沒有這個問題。兩種數(shù)據(jù)掛載方式都可以。如果有人知道后者的原因,也請告訴我一下。

到此這篇關(guān)于Windows環(huán)境GeoServer打包Docker的方法實現(xiàn)的文章就介紹到這了,更多相關(guān)GeoServer打包Docker內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 清除docker無用鏡像實現(xiàn)過程

    清除docker無用鏡像實現(xiàn)過程

    文章介紹了查看和清理Docker占用資源的方法,包括使用docker container ls、image ls、volume ls等命令了解資源狀態(tài),并通過docker system prune刪除未使用容器、鏡像、網(wǎng)絡(luò)及緩存,同時強(qiáng)調(diào)刪除鏡像前需先移除引用容器
    2025-08-08
  • 一文詳解如何獲取docker鏡像中的jar包

    一文詳解如何獲取docker鏡像中的jar包

    本人在工作中遇到了需要在docker查看jar這種操作,查看了許多資料,終于還是找到了,下面這篇文章主要給大家介紹了關(guān)于如何獲取docker鏡像中jar包的相關(guān)資料,需要的朋友可以參考下
    2024-05-05
  • Docker 鏡像源配置詳細(xì)步驟

    Docker 鏡像源配置詳細(xì)步驟

    文章介紹了如何配置Docker鏡像源以提高國內(nèi)拉取鏡像的速度,步驟包括找到并編輯配置文件、寫入鏡像源配置、重啟Docker服務(wù)等,文章還詳細(xì)比較了systemctl和service的區(qū)別,并提供了驗證配置是否成功的命令,感興趣的朋友跟隨小編一起看看吧
    2025-12-12
  • Docker刪除已存在的鏡像的實現(xiàn)

    Docker刪除已存在的鏡像的實現(xiàn)

    本文主要介紹了Docker刪除已存在的鏡像的實現(xiàn),刪除已存在的 Docker 鏡像,可以使用 docker rmi 命令,下面就來詳細(xì)的介紹一下使用步驟,感興趣的可以了解一下
    2023-08-08
  • Docker部署MySQL鏡像的保姆級教程

    Docker部署MySQL鏡像的保姆級教程

    docker是一種容器化技術(shù),可以將應(yīng)用程序及其依賴項打包成一個獨(dú)立的可移植容器,mysql是一個流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),在Docker中部署MySQL鏡像可以方便地創(chuàng)建和管理MySQL數(shù)據(jù)庫實例,本文給大家介紹了Docker部署MySQL鏡像的教程,需要的朋友可以參考下
    2025-06-06
  • 如何解決Docker連接本地MySQL服務(wù)失敗的問題

    如何解決Docker連接本地MySQL服務(wù)失敗的問題

    這篇文章主要介紹了如何解決Docker連接本地MySQL服務(wù)失敗的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • Docker & Docker Compose安裝教程

    Docker & Docker Compose安裝教程

    本文詳細(xì)介紹了在Ubuntu 22.04.1 LTS系統(tǒng)上安裝和配置Docker的步驟,包括選擇合適的存儲驅(qū)動和日志驅(qū)動,生產(chǎn)級配置以及用戶權(quán)限管理,通過一系列檢查步驟和常用命令,確保Docker安裝和配置的正確性
    2026-01-01
  • Docker開啟遠(yuǎn)程訪問的實現(xiàn)方式

    Docker開啟遠(yuǎn)程訪問的實現(xiàn)方式

    這篇文章主要介紹了Docker開啟遠(yuǎn)程訪問的實現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Docker?部署?Minio?對象存儲服務(wù)器的過程詳解

    Docker?部署?Minio?對象存儲服務(wù)器的過程詳解

    Minio是一個輕量級的應(yīng)用程序,可以在各種環(huán)境中運(yùn)行,包括公共云、私有云和混合云,這篇文章主要介紹了Docker?部署?Minio?對象存儲服務(wù)器的過程詳解,需要的朋友可以參考下
    2024-07-07
  • docker安裝mysql完美教程(建議收藏!)

    docker安裝mysql完美教程(建議收藏!)

    最近使用docker,故將數(shù)據(jù)庫和程序都用docker來一遍,下面這篇文章主要給大家介紹了關(guān)于docker安裝mysql完美教程的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03

最新評論

微山县| 兰西县| 沐川县| 陕西省| 大城县| 延吉市| 明星| 宾阳县| 泰顺县| 改则县| 沅江市| 兰坪| 大姚县| 大同市| 上思县| 武川县| 许昌县| 浪卡子县| 嘉定区| 宾阳县| 安远县| 河东区| 京山县| 贺州市| 淳化县| 克拉玛依市| 禄丰县| 大悟县| 五大连池市| 泸水县| 深水埗区| 车险| 牙克石市| 辽宁省| 阜平县| 新营市| 海原县| 社会| 简阳市| 博白县| 崇文区|