目標:在本機上安裝docker,添加容器,在容器中部署tomcat,從外網能夠訪問便可
配置環境ubuntu14.04java
一、Ubuntu14.04自帶安裝包,該版本比較舊,從Docker官方源安裝最新的版本,首先須要安裝apt-transport-https,並添加Docker官方源。web
安裝apt-transport-https 插件,通常狀況下系統都會有該插件docker
$sudo apt-get install apt-transport-https
給替換的源受權ubuntu
$sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
替換官網上的docker源tomcat
$sudo sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
更新源bash
$sudo apt-get update
安裝dockerspa
$sudo apt-get install -y lxc-docker
輸入命名查看是否安裝成功,顯示以下所示,即安裝成功插件
$sudo docker version
首先下載一個鏡像,鏡像爲ubuntu 14.04,查看鏡像使用docker images命令code
下載鏡像server
$sudo docker pull ubuntu:14.04
查看鏡像,以下所示,TAG爲14.04即爲剛剛下載的鏡像
$sudo docker images
啓動剛剛下載的鏡像
$sudo docker run -t -i ubuntu:14.04 /bin/bash
查看剛剛啓動的鏡像,即正在運行的容器的id
$sudo docker ps
得到剛剛啓動的容器ID爲f7a20304e55b
經過docker的cp命令,把主機上已經下好的jdk以及tomcat傳送到容器中, cp命令的兩種方式:
一、從主機cp到容器中(containerId即爲剛剛啓動正在運行的容器Id)
$sudo docker cp /host-path/file <containerId>:/containter-path
二、從容器中cp到主機
$sudo docker cp <containerId>:/containter-path/file /host-path
這樣把須要環境傳入容器中,因爲此部署只須要連接內部的tomcat,因此只須要傳輸jdk以及tomcat文件,jdk部署在/usr/local/jdk1.8.0_60/,
配置環境變量
打開如下文件
$vi ~/.bashrc
加入要配置的環境變量
export JAVA_HOME=/usr/local/jdk1.8.0_60 export CLASSPATH=.:$JAVA_HOME/lib export PATH=$JAVA_HOME/bin:$PATH
修改完環境變量以後,使用source命令使.bashrc文件生效
$source ~/.bashrc
在任意目錄下解壓下載的tomcat.tar,
此時容器配置完畢
把修改後的容器進行版本提交(containerId爲剛剛啓動的容器id)
$sudo docker commit -m "含有tomcat的版本" -a tomcat <containerId> ubuntu:v6
提交以後咱們會看到在docker的鏡像裏有新建的v6鏡像
使用如下命令對端口進行映射 58080爲主機的端口,8080爲tomcat的端口,至關於把容器內部的端口映射到主機的端口中,這樣經過外部便可訪問容器的tomcat
$sudo docker run -p -t -i 58080:8080 --name javaweb ubuntu/14.04:v6
這樣進入到容器內部,對容器進行啓動,咱們的tomcat放在/usr/local/tomcat下
$cd /usr/local/tomcat/bin/
啓動tomcat
$sh startup.sh
啓動完畢,進行訪問
咱們外部的主機地址爲http://192.168.5.27,則加入端口58080,顯示以下
成功!!!!!!!!