Docker練習(一)-安裝LA(N)MP、Tomcat和Nginx及Nginx反向代理

0x01 安裝LAMP

可能用到的命令

#拉取鏡像
docker pull tutum/lamp
#查看鏡像
docker images
#啓動容器並綁定端口
docker run -d -p 8080:80 -p 3306:3306 -v /var/www/app/:/var/www/html tutum/lamp
#查看運行的容器
docker ps
docker ps -a
#進入正在運行的容器
docker exec -it 'id/name' /bin/bash  
#退出容器
exit
#開啓、重啓、停止容器
docker start 'id/name'
docker restart 'id/name'
docker stop 'id/name'

具體安裝過程如下:
1.查詢鏡像

root@qwzf:~# docker search lamp
NAME                          DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
linode/lamp                   LAMP on Ubuntu 14.04.1 LTS Container            179                                     
mattrayner/lamp               A simple LAMP docker image running the prere…   170                                     [OK]
tutum/lamp                    Out-of-the-box LAMP image (PHP+MySQL)           132                                     
greyltc/lamp                  a super secure, up-to-date and lightweight L…   99                                      [OK]
fauria/lamp                   Modern, developer friendly LAMP stack. Inclu…   79                                      [OK]

2.拉取鏡像

docker pull tutum/lamp

3.啓動守護式容器並端口映射和掛載目錄

root@qwzf:~# docker run --name=lamp -d -p 8080:80 -p 3306:3306 -v /var/www/app/lamp/:/var/www/html tutum/lamp
#8080 宿主機端口 80 docker端口
#/var/www/app/lamp/ 宿主機要掛載的目錄
#/var/www/html docker上被掛載的位置

在這裏插入圖片描述

0x02 安裝LNMP

1.查詢鏡像

docker search lnmp

2.拉取鏡像

docker pull winstonpro/lnmp

3.啓動守護式容器並端口映射和掛載目錄

root@qwzf:~# docker run --name=lnmp -d -p 8000:80 -p 3000:3306 -v /var/www/app/lnmp/:/usr/share/nginx/html winstonpro/lnmp

在這裏插入圖片描述

0x03 安裝vim

方式一:默認源安裝
執行apt-get update更新源

root@dc3d333fc181:~# apt-get update

更新完過後我們就可以安裝了vim了

root@dc3d333fc181:~# apt-get install vim

以上的方式雖然可以實現安裝vim,但是速度很慢。下面是更快的方式
方式二:aliyun源安裝
因爲沒有vi,vim編輯工具,我這裏使用sed命令進行編輯文件內容。
首先查看默認源地址:

root@dc3d333fc181:~# cat /etc/apt/sources.list
# deb http://snapshot.debian.org/archive/debian/20200130T000000Z buster main
deb http://deb.debian.org/debian buster main
# deb http://snapshot.debian.org/archive/debian-security/20200130T000000Z buster/updates main
deb http://security.debian.org/debian-security buster/updates main
# deb http://snapshot.debian.org/archive/debian/20200130T000000Z buster-updates main
deb http://deb.debian.org/debian buster-updates main

從上面的輸出內容我們可以看出,默認會從deb.debian.org去更新源信息。我們將其替換爲aliyun的源地址:

root@dc3d333fc181:~# sed -i s@/deb.debian.org/@/mirrors.aliyun.com/@g /etc/apt/sources.list

替換完源後我們就可以安裝vim了

root@dc3d333fc181:~# apt-get clean
root@dc3d333fc181:~# apt-get update
root@dc3d333fc181:~# apt-get install vim

0x04 安裝Tomcat

1.查找tomcat鏡像

docker search tomcat

在這裏插入圖片描述
2.拉取tomcat版本爲7的鏡像
可以先看一下鏡像是否已經拉取

docker images

拉取tomcat版本爲7的鏡像

docker pull tomcat:7

在這裏插入圖片描述
3.啓動Tomcat
可以先看一下容器是否已經啓動

docker ps -a

在這裏插入圖片描述
沒找到,說明沒啓動,需要啓動tomcat容器。
查看一下tomcat鏡像

docker images

在這裏插入圖片描述
啓動Tomcat容器

docker run --name tomcat -d -p 8000:8080 734d712b8777

在這裏插入圖片描述
容器啓動成功。
4.移動Tomcat自帶的項目文件ROOT
進入容器

docker exec -it tomcat /bin/bash

在這裏插入圖片描述
將webapps.dist目錄文件下tomcat自帶的項目文件ROOT移動到webapps目錄文件下

mv ./webapps.dist/ROOT webapps/

在這裏插入圖片描述
5.訪問測試
訪問測試一下
在這裏插入圖片描述
訪問成功,Tomcat服務構建成功。

0x05 安裝Nginx並實現反向代理

1.查找nginx鏡像

docker search nginx

在這裏插入圖片描述
2.拉取nginx鏡像
拉取箭頭所指的鏡像

docker pull nginx

在這裏插入圖片描述
3.啓動nginx容器

docker run --name nginx_1 –d –p 8888:80 nginx

在這裏插入圖片描述
4.訪問測試
在這裏插入圖片描述
訪問成功,說明nginx安裝成功。
5.設置反向代理並測試
首先進入容器

docker exec -it nginx_1 /bin/bash

在這裏插入圖片描述
安裝vim

sed -i s@/deb.debian.org/@/mirrors.aliyun.com/@g /etc/apt/sources.list
apt-get clean
apt-get update
apt-get install vim

在這裏插入圖片描述
用vim打開nginx.conf配置文件,並添加以下選項

vim /etc/nginx/nginx.conf

在這裏插入圖片描述
打開/etc/nginx/conf.d/目錄,發現.conf後綴的文件只有default.conf文件。
打開default.conf文件配置反向代理:

vim /etc/nginx/conf.d/default.conf
server{
	listen    80;
	server_name	39.105.93.165:8888; #nginx反向代理服務器IP地址或域名
	location / {
		root	/usr/log/nginx/html;
		index	index.html	index.htm;
		proxy_pass	http:39.105.93.165:8000; #被代理的服務IP地址或域名
}

在這裏插入圖片描述
意思是:通過訪問http://39.105.93.165:8888,其實訪問到的是http://39.105.93.165:8000

也可以使用docker內網地址進行反向代理配置,通過公網ip訪問。
查看docker內網ip

docker inspect 容器名/id

在這裏插入圖片描述
保存退出,然後重啓容器

docker restart nginx_1

在這裏插入圖片描述
然後訪問http://39.105.93.165:8888
在這裏插入圖片描述
這樣訪問的nginx服務器http://39.105.93.165:8888
其實是訪問到了的是服務地址爲http://39.105.93.165:8000的tomcat服務
從而實現簡單的反向代理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章