一、安裝docker
1.安裝需要的軟件包
# yum-util提供yum-config-manager功能#另外兩個是devicemapper驅動依賴的
$ yum install -y yum-utils device-mapper-persistent-data lvm2
2.設置yum源
$ yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3.安裝docker
6.1. 安裝最新版本
$ yum install -y docker-ce
4.啓動docker服務
systemctl start docker.service
5.驗證安裝是否成功(有client和service兩部分表示docker安裝啓動都成功了)
[root@node1 ~]# docker version
Client:
Version: 18.03.0-ce
API version: 1.37
6、安裝工具:docker-compose
yum install docker-compose
二、docker 的一些命令:
1、查看docker 中的所有運行鏡像:docker ps
2、進入某個鏡像:
docker exec -it 78f533af08d4 bash
3、啓用、關閉:
docker run -d -p 8081:80 nginx
docker stop b1194639fc58
4、查看所有鏡像:
docker image ls
三、製作自己的鏡像,運行一個自己的java web程序
這裏已一個java的開源博客系統jpress舉例,jpress是一個類似wordpress的博客程序,區別是一個是php源碼,一個是java源碼
1.下載jpress的war包
2.下載tomcat容器作爲基礎鏡像,並編寫Dockefile文件
[root@node1 ~]# docker pull tomcat
在jpress.war所在目錄建立Dockefile文件
[root@node1 ~]# cat Dockerfile
# 說明是以tomcat爲基礎模板
from tomcat
# 容器的版權信息
MAINTAINER jack [email protected]
# 拷貝war包發佈到tomcat的www web程序發佈目錄
COPY jpress.war /usr/local/tomcat/webapps
3.創建一個叫做jpress:latest的鏡像
[root@node1 ~]# docker build -t jpress:latest .
啓動容器將容器的8080端口映射到宿主機的8888
[root@node1 ~]# docker run -d -p 8888:8080 jpress
04252a52ecffab83d151a7d37aa24c0acd0b7bc75607b6cc8da2c017ee84ac4b
訪問tomcat,可以看到能夠正常訪問jpress,http://192.168.3.177:8888/jpress/
4、創建Mysql鏡像
因爲jpress後臺依賴mysql數據庫,需要安裝mysql
# docker pull mysql
運行mysql容器,3306映射到宿主3306,創建密碼,數據庫爲jpress
[root@node1 ~]# docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=jpress mysql
正常的創建,mysql 鏡像
docker run -di --name stefan_mysql -p
33306
:
3306
-e MYSQL_ROOT_PASSWORD=
123456
mysql
進入鏡像:
docker exec -it stefan_mysql /bin/bash