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

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

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

1.前言

在 Windows 環(huán)境下將 GeoServer 打包為 Docker,可以實現(xiàn)跨平臺一致性、簡化環(huán)境配置、快速部署與恢復,同時便于擴展集成和版本管理,并通過資源隔離提高系統(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確認一下是否安裝成功了。

在這里插入圖片描述

3.準備Dockerfile

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

在這里插入圖片描述

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

# 使用基礎鏡像
FROM ubuntu:20.04

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

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

# 復制并解壓 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

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

# 設置工作目錄
WORKDIR /usr/local/geoserver-2.22.5-bin/bin

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

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

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

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

在這里插入圖片描述

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

在這里插入圖片描述

5.打包鏡像

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

docker build --tag geoserver:2.22.6 .

在這里插入圖片描述

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

在這里插入圖片描述

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

好了,現(xiàn)在已經(jīng)打包完成了,還差最重要的一步。gis中涉及的影像數(shù)據(jù)都很大,動不動上百個Gshp文件也要經(jīng)常變動,所以它們是不可能打包到docker里的,那么怎么讓docker能夠訪問到機器上的這些文件呢?那就是使用數(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的路徑的對應關系如下:

在這里插入圖片描述

將右邊兩個文件里的全部內(nèi)容拷貝到左邊對應文件夾的_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.總結

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

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

相關文章

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

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

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

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

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

    Docker 鏡像源配置詳細步驟

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

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

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

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

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

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

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

    Docker & Docker Compose安裝教程

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

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

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

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

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

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

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

最新評論

汤阴县| 庆城县| 巴青县| 宝应县| 京山县| 定远县| 云和县| 班玛县| 武汉市| 高密市| 礼泉县| 巍山| 禄丰县| 伊宁市| 望城县| 奉化市| 资源县| 平定县| 大厂| 繁昌县| 濮阳市| 印江| 绥德县| 汉中市| 嘉义县| 沙河市| 扎赉特旗| 洛宁县| 梁河县| 山东| 无极县| 华阴市| 称多县| 桃源县| 吉林市| 自贡市| 四子王旗| 绥芬河市| 藁城市| 马鞍山市| 两当县|