概述:Docker是一個開源的容器架構,可以把開發的系統和系統環境一隻到Docker容器中,釋出到linux上。
安裝Docker
解除安裝舊版本較舊的 Docker 版本稱為 docker 或 docker-engine 。如果已安裝這些程式,請解除安裝它們以及相關的依賴項。
安裝 Docker Engine-Communitysudoyum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
使用 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
使用以下指令來設定穩定的倉庫。
$
sudoyum-config-manager --add-repo https:
//http://download.docker.com
/linux
/centos
/docker-ce.repo
要安裝特定版本的 Docker Engine-Community,請在存儲庫中列出可用版本,然後選擇并安裝:1、列出并排序您存儲庫中可用的版本。此示例按版本号(從高到低)對結果進行排序。
$
yum listdocker-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的鏡像位址
3、打開裝有Docker的Centos伺服器,輸入:docker pull openjdk 安裝
4、安裝好後輸入Docker images 檢視鏡像檔案,顯示openjdk則安裝成功
5、在任意一個檔案夾添加一個Dockerfile的檔案(我是在opt檔案夾下建立了一個DockerFile檔案夾,然後建立的Dockerfile檔案)
6、輸入vi Dockerfile 進入編輯模式
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、檢視鏡像
10、 docker run -itd -p 80:8080 secrity:1.0.0 /bin/bash 啟動容器,(80是容器開放的端口,8080是容器内容的端口,-p是設定端口,-i是互相操作,-t是終端,-d是背景運作)
以上就是安裝Docker到生成java自定義鏡像到啟動jar包項目