天天看點

docker java鏡像_Linux安裝Docker到打包JAVA項目生成鏡像

概述:Docker是一個開源的容器架構,可以把開發的系統和系統環境一隻到Docker容器中,釋出到linux上。

安裝Docker

解除安裝舊版本

較舊的 Docker 版本稱為 docker 或 docker-engine 。如果已安裝這些程式,請解除安裝它們以及相關的依賴項。

sudoyum remove docker

docker-client

docker-client-latest

docker-common

docker-latest

docker-latest-logrotate

docker-logrotate

docker-engine

安裝 Docker Engine-Community

使用 Docker 倉庫進行安裝

在新主機上首次安裝 Docker Engine-Community 之前,需要設定 Docker 倉庫。之後,您可以從倉庫安裝和更新 Docker。

設定倉庫

安裝所需的軟體包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存儲驅動程式需要 device-mapper-persistent-data 和 lvm2。

$

sudo yum install

-y yum-utils device-mapper-persistent-data lvm2

使用以下指令來設定穩定的倉庫。

$

sudo

yum-config-manager --add-repo https:

//

http://download.docker.com

/

linux

/

centos

/

docker-ce.repo

要安裝特定版本的 Docker Engine-Community,請在存儲庫中列出可用版本,然後選擇并安裝:

1、列出并排序您存儲庫中可用的版本。此示例按版本号(從高到低)對結果進行排序。

$

yum list

docker-ce --showduplicates

| sort

-r

docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable

docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable

docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable

docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable

2、通過其完整的軟體包名稱安裝特定版本,該軟體包名稱是軟體包名稱(docker-ce)加上版本字元串(第二列),從第一個冒号(:)一直到第一個連字元,并用連字元(-)分隔。例如:docker-ce-18.09.1。

$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
           

啟動 Docker。

$ sudo systemctl start docker
           

通過運作 hello-world 映像來驗證是否正确安裝了 Docker Engine-Community 。

$ sudo docker run hello-world
           

Docker的基本指令使用(***為容器的id)

docker ps 檢視目前運作容器

docker ps -a 檢視已停止的容器

docker restart *** 重新開機容器

docker start *** 啟動容器

docker stop *** 停止容器

docker run -it ubuntu / bin / bash 建立一個ubuntu容器并且進入容器内部

docker pull ubuntu 建立一個ubuntu 容器

docker attach ***進入容器内部,使用exit退出容器,容器停止運作

docker exec it *** /bin/bash 進入容器,但退出容器,容器背景運作

exit 退出容器内部

docker rm -f *** 删除容器

Docker添加Mysql鏡像,并啟動容器

1、使用docker search mysql指令檢視可用版本

2、使用docker pull mysql:latest拉取 MySQL 鏡像

3、通過docker images檢視本地是否存在mysql鏡像

4、運作mysql鏡像,生成容器

docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

  • -p 3306:3306 :映射容器服務的 3306 端口到主控端的 3306 端口,外部主機可以直接通過 主控端ip:3306 通路到 MySQL 的服務。
  • MYSQL_ROOT_PASSWORD=123456 :設定 MySQL 服務 root 使用者的密碼。
5、通過 docker ps 指令檢視是否安裝成功,本機可以通過 root 和密碼 123456 通路 MySQL 服務。

Docker容器建立JAVA鏡像檔案,并啟動。

自定義JAVA鏡像檔案的前提是需要一個基礎鏡像,該鏡像需要包含自定義鏡像可以引用的内容,

https://hub.docker.com/

提供了很多的基礎鏡像,其中就Java的JDK基礎鏡像

1、Java的JDK鏡像檔案位址: https:// hub.docker.com/_/openjd k/

(由于Oracle JDK license問題,Docker官方的Java基礎鏡像使用的是OpenJDK而不是Oracle JDK。)

2、打開jdk網址後複制下jdk的鏡像位址

docker java鏡像_Linux安裝Docker到打包JAVA項目生成鏡像

3、打開裝有Docker的Centos伺服器,輸入:docker pull openjdk 安裝

4、安裝好後輸入Docker images 檢視鏡像檔案,顯示openjdk則安裝成功

docker java鏡像_Linux安裝Docker到打包JAVA項目生成鏡像
5、在任意一個檔案夾添加一個Dockerfile的檔案(我是在opt檔案夾下建立了一個DockerFile檔案夾,然後建立的Dockerfile檔案)
docker java鏡像_Linux安裝Docker到打包JAVA項目生成鏡像
6、輸入vi Dockerfile 進入編輯模式
docker java鏡像_Linux安裝Docker到打包JAVA項目生成鏡像

FROM是依賴的基礎鏡像,這裡填的是剛才安裝的openjdk,ADD是把jar封包件添加到鏡像中,expose是鏡像開放8095端口,ENTRYPOINT是指容器自啟動,RUN /bin/cp ...是指設定時區

7、jar封包件需要和Dockerfile在同一檔案夾下

8、輸入docker build -t rda:1.0.0 . 建構自定義docker鏡像

(rda為鏡像名稱, 1.0.0是鏡像版本,指令的最後有個“.” 表示在目前目錄下面尋找 dockerfile 檔案)

9、檢視鏡像

docker java鏡像_Linux安裝Docker到打包JAVA項目生成鏡像
10、 docker run -itd -p 80:8080 secrity:1.0.0 /bin/bash 啟動容器,(80是容器開放的端口,8080是容器内容的端口,-p是設定端口,-i是互相操作,-t是終端,-d是背景運作)

以上就是安裝Docker到生成java自定義鏡像到啟動jar包項目

繼續閱讀