簡介
主要介紹如何從基礎系統debian部署docker
關於docker基礎知識在 相關資料 里有鏈接
安裝docker
1、使用root用戶身份添加apt源
添加public key使docker的安裝源授信
$ curl -s 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e' | sudo apt-key add --import
安裝apt的https支持
sudo apt-get update && sudo apt-get install apt-transport-https
安裝image虛擬化支持
sudo apt-get install -y linux-image-extra-virtual
添加apt源
echo "deb https://packages.docker.com/1.11/apt/repo ubuntu-trusty main" | sudo tee /etc/apt/sources.list.d/docker.list
安裝docker
apt-get update && apt-get install docker-engine
查看是否安裝成功
docker info
看到以下信息就安裝成功了
Containers: 1 Running: 1 Paused: 0 Stopped: 0 Images: 15 Server Version: 1.11.2-cs3 Storage Driver: aufs Root Dir: /var/lib/docker/aufs Backing Filesystem: extfs Dirs: 17 Dirperm1 Supported: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge null host Kernel Version: 3.16.0-4-amd64 Operating System: Debian GNU/Linux 8 (jessie) OSType: linux Architecture: x86_64 CPUs: 1 Total Memory: 3.871 GiB Name: debian ID: IWCZ:QXXZ:VBUN:UMF7:XRG3:CMXB:6LUO:F65C:OA6B:75QQ:7SEW:3OKT Docker Root Dir: /var/lib/docker Debug mode (client): false Debug mode (server): false Registry: https://index.docker.io/v1/
制作基礎軟件鏡像
jdk8
首選需要安裝jdk,這里使用jdk8進行安裝
download jdk
同目錄下編寫Dockerfile
FROM registry.cn-hangzhou.aliyuncs.com/yuuji/debian:latest ADD jdk-8u101-linux-x64.tar.gz /opt ENV JAVA_HOME /opt/jdk1.8.0_101 WORKDIR /usr/bin RUN ln -s /opt/jdk1.8.0_101/bin/java java
docker build -t jdk8 .
也可以在docker hub服務器創建倉庫發布到遠程
docker build -t registry.cn-hangzhou.aliyuncs.com/xxx/jdk8 . docker push registry.cn-hangzhou.aliyuncs.com/xxx/jdk8
發布后可以到遠程查看,也可以使用命令查看
docker images
mave3
基於jdk8我們在制作一個maven3的image,步驟同上,我就不一一列舉命令了;
Dockerfile
FROM registry.cn-hangzhou.aliyuncs.com/yuuji/jdk8:latest ADD settings.xml /root/.m2/settings.xml ADD apache-maven-3.3.9-bin.tar.gz /opt WORKDIR /usr/bin RUN ln -s /opt/apache-maven-3.3.9/bin/mvn mvn
發布,查看是否成功
制作軟件錯誤
如果過程中遇到錯誤怎么辦
使用 命令 docker images 如果看到了none的可以使用命令 docker rmi IMAGE ID 進行清理;
如果清理不掉的話是這個鏡像被使用了,使用docker ps -a 然后找到使用的CONTAINER
然后 docker rm CONTAINER ID
編譯項目與部署
這里是通過spring-boot首先項目可以啟動
然后在項目跟目錄下建立Dockerfile
FROM registry.cn-hangzhou.aliyuncs.com/yuuji/maven3:latest EXPOSE 7001 RUN mkdir -p /opt/leona WORKDIR /opt/leona ADD . /opt/leona RUN mvn clean install -Dmaven.test.skip CMD ["java","-jar","target/leona.jar"]
端口號 7001 是你spring-boot web配置的
然后編譯image 同軟件,這里我就不發布到遠程了
docker build -t xxx .
部署
已經編譯好了軟件和程序的image接下來就是部署了
docker run -d -p 7001:7001 xxx
檢查一下curl localhost:7001
<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Leona</title> </head> <body> hello word! </body> </html>
是不是很簡單? 233
具體參數不解釋了,可以自己查;
相關資料
用雲棲社區APP,舒服~
【雲棲快訊】映客、熊貓TV、虎撲、HTC、優酷土豆、網聚寶、博雲視覺、釘釘、駐雲、e代駕……互聯網時代知名企業現場分享他們的雲端體驗,更有意想不到的重磅神秘嘉賓來襲!8月9日,北京雲棲大會即將直播!
詳情請點擊



