vi Dockerfile //編寫(xiě)dockerfile文件vi run.sh //制作nginx 啟動(dòng)腳本docker build -t nginx:new .docker run -d -P nginx:new
web頁(yè)面訪問(wèn)192.168.80.100:32769
二、Docker構(gòu)建tomcat鏡像
1、新建tomcat工作目錄
mkdir /root/tomcat //創(chuàng)建目錄
cd tomcat/
2、上傳jdk和tomcat軟件包
tar xf jdk-8u144-linux-x64.tar.gz //解壓上傳的jdk環(huán)境
tar xf apache-tomcat-8.5.23.tar.gz //解壓上傳tomcat軟件包
3、編寫(xiě)dockerfile鏡像制作文件vi Dockerfile
#基于基礎(chǔ)鏡像
FROM centos
#用戶(hù)信息
MAINTAINER this is tomcat image <chen>
#添加jdk環(huán)境到容器中
ADD jdk1.8.0_114 /usr/local/java
#配置容器中的java環(huán)境
ENV JAVA_HOME /usr/local/java
ENV JAVA_BIN /usr/local/java/bin
ENV JRE_HOME /usr/local/java/jre
ENV PATH $PATH:/usr/local/java/bin:/usr/local/java/jre/bin
ENV CLASSPATH /usr/local/java/jre/bin:/usr/local/java/lib:/usr/local/java/jre/lib/charsets.jar
#添加tomcat項(xiàng)目到容器中
ADD apache-tomcat-8.5.23 /usr/local/tomcat8
EXPOSE 8080
4、創(chuàng)建新的鏡像docker build -t tomcat:centos .
5、啟動(dòng)鏡像并驗(yàn)證docker run -d --name tomcat01 -p 80:8080 tomcat:centos
web頁(yè)面訪問(wèn)192.168.80.100
三、Docker構(gòu)建mysql鏡像(推薦使用centos6)
1、創(chuàng)建Mysql工作目錄mkdir MYSQL //創(chuàng)建mysql目錄
2、編寫(xiě)dockerfile鏡像制作文件vi Dockerfile
#基于基礎(chǔ)鏡像
FROM guyton/centos6
#用戶(hù)信息
MAINTAINER this is msyql images <chen>
#安裝mysql
RUN yum -y install mysql mysql-server
#啟動(dòng)mysql并且授權(quán)登錄用戶(hù)
RUN /etc/init.d/mysqld start &&\\\\
mysql -e "grant all privileges on . to \\\’root\\\’@\\\’%\\\’ identified by \\\’abc123\\\’;" &&\\\\
mysql -e "grant all privileges on . to \\\’root\\\’@\\\’localhost\\\’ identified by \\\’abc123\\\’;"
#指定容器內(nèi)mysql端口
EXPOSE 3306
#開(kāi)啟守護(hù)進(jìn)程
CMD ["mysqld_safe"]
3、創(chuàng)建新的鏡像docker build -t centos6:mysql .
4、啟動(dòng)鏡像docker run --name=mysqlserver -d -P centos6:mysql
5、通過(guò)宿主機(jī)驗(yàn)證
yum install mariadb //宿主機(jī)安裝mysql客戶(hù)端程序
mysql -uroot -pabc123 -h 192.168.80.100 -P 32770 //訪問(wèn)docker中的數(shù)據(jù)庫(kù)
四、刪除none鏡像和無(wú)效的容器
由于dockfile在創(chuàng)建鏡像過(guò)程中會(huì)一旦報(bào)錯(cuò)就會(huì)出現(xiàn)none鏡像,以及在啟動(dòng)鏡像的同時(shí),由于操作和配置的錯(cuò)誤會(huì)出現(xiàn)狀態(tài)為Exited的容器,這些鏡像和容器無(wú)法運(yùn)行,但是會(huì)占用系統(tǒng)空間資源,因此必要的情況需將其清除。vi none.sh //編寫(xiě)shell腳本
添加以下內(nèi)容
docker ps -a | grep "Exited" | awk \\\'{print $1 }\\\’| xargs docker stop //停止容器
docker ps -a | grep "Exited" | awk \\\'{print $1 }\\\’ | xargs docker rm //刪除容器
docker images | grep none| awk \\\'{print $3 }\\\’ | xargs docker rmi //刪除none鏡像
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問(wèn)題,請(qǐng)?jiān)L問(wèn)西部數(shù)碼官網(wǎng):m.ps-sw.cn