使用阿里云服务器安装docker,并用nginx示例
一、前言
之前對docker了解不多,自從使用了一次之后,就感覺這個產品對開發者實在是太友好了,可以迅速在Linux,window等平臺部署服務。常見的有數據庫,nginx,消息隊列,redis等。利用docker部署上述服務,或者其他的服務非常方便,具體有多方便,看下面的使用。我相信你使用一次時候,不會再想利用原生方式部署或者安裝了。
二、安裝前操作
1、首先你需要購買一個阿里云服務器,這里就不多說了。請讀者自行購買,或者是使用虛擬機安裝Centos也可以。
2、如果使用阿里云服務器,需要從控制臺獲得服務器的公網ip和密碼。筆者使用的是xshell登錄云服務器。
3、在Linux上安裝docker,并且開啟docker服務
4、拉取docker遠程鏡像,并且創建實例,開啟實例服務
5、測試服務
登錄服務器
1、打開XShell,創建會話,并且輸入主機地址,云服務器填寫公網IP
2、點擊會話屬性左側的用戶身份認證,在出現的界面中填寫用戶名和密碼,也可以選擇使用更加安全的public key 認證模式
3、點擊確認,如果一切沒有問題,就已經登錄成功了。如果出現如下界面,就表示你已經使用xshell成功登錄阿里云服務器。
到此,本步驟已經完成,下面就是docker的安裝了
三、docker安裝
需知:docker支持centos7或者是centos8,centos6安裝或者運行可能會出現問題。
3.1、使用官方腳本安裝命令安裝
安裝命令如下:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
也可以使用國內 daocloud 一鍵安裝命令:
curl -sSL https://get.daocloud.io/docker | sh
這個命令敲下后,等待時間可能會有點久,請耐心等待。
出現如下圖片場景,標識已經安裝成功
3.2、手動安裝
3.2.1 卸載舊版本
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
3.2.2 安裝 Docker Engine-Community
使用 Docker 倉庫進行安裝:在新主機上首次安裝 Docker Engine-Community 之前,需要設置 Docker 倉庫。之后,您可以從倉庫安裝和更新 Docker。
設置倉庫:
安裝所需的軟件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存儲驅動程序需要 device-mapper-persistent-data 和 lvm2。
sudo yum install -y yum-utils \device-mapper-persistent-data \lvm2
使用以下命令來設置穩定的倉庫:
- 官方源
sudo yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo
- 阿里源
sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 清華源
sudo yum-config-manager \--add-repo \https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
安裝 Docker Engine-Community
sudo yum install docker-ce docker-ce-cli containerd.io
Docker 安裝完默認未啟動。并且已經創建好 docker 用戶組,但該用戶組下沒有用戶。
四、docker使用
4.1、啟動docker
如果你是root用戶,可以直接運行如下命令
systemctl start docker
否則,你需要執行如下命令
sudo systemctl start docker
又或者添加一個docker用戶組,創建用戶,用戶對docker服務的操作。這里不多贅述,到這里,安裝和啟動docker就已經完成
4.2、查看docker是否啟動成功
輸入如下命令,查看是否存在docker進程
ps -ef | grep docker
出現如下界面,標識啟動docker服務成功
4.3、測試docker基本服務是否正常
每次學一個新東西,hello-world 對于我們來說,這個是必經之路,不僅僅標識我們創建成功,并且運行程序也已經成功。執行如下命令
# root 用戶
docker run hello-world
# 非root用戶
sudo docker run hello-world
其實這個時候我們并沒拉取鏡像,創建實例,我們直接就運行了,這個命令執行如果沒有相關的實例或者鏡像會幫助我們拉取鏡像,創建實例,然后運行。出現如下界面,就表示成功安裝docker了
4.4、使用docker安裝nginx
這里就再使用docker安裝nginx,提供一個基礎案例。
首先,我們市需要服務鏡像的,你可以理解為一個nginx的基本安裝文件,那就暫且這么理解吧。
4.4.1 查找鏡像
docker search nginx
執行之后,我們可以看到如下圖所示,這是在docker鏡像庫中搜索出來的和nginx相關的鏡像,通常第一個就是我們需要的,與關鍵字匹配度最高的一個鏡像
也可在dockerhub庫查看你需要的鏡像,自行查看。
4.4.2 拉取最新的nginx鏡像
這里我們拉取最新的進行。
docker pull nginx:latest
4.4.3 查看已經拉取了的鏡像
docker images
這里就可以看到我們之前的hello-world 的鏡像,包括剛剛拉取的nginx的鏡像
4.4.4 運行容器
docker run --name nginx-test -p 8080:80 -d nginx
參數說明
- -name nginx-test 容器名稱,關閉或者啟動可以使用改名稱
- -p8080:80 端口映射 ,將本地 8080 端口映射到容器內部的 80 端口。
- -d nginx 表示容器一直在運行
啟動成功,這里綁定80端口即 -p 80:80
注意,這里阿里云服務器需要配置安全組,否則無法訪問的。阿里云的安全組默認不開放80端口,需要自己配置。
成功打開nginx主頁
如果存在外網打不開的情況可以嘗試使用如下命令,檢測本地是否可以訪問容器服務。官方nginx默認是開啟80端口,所以可以嘗試訪問80端口,如果可以成功訪問,那么有可能是安全組配置問題。
curl localhost:80
4.4.5 停止容器
停止單個容器
docker stop 容器id
停止所有的容器
docker stop $(docker ps -aq)
總結
以上是生活随笔為你收集整理的使用阿里云服务器安装docker,并用nginx示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringBoot2.3 修改响应头、
- 下一篇: 阿里云Centos 解决挖矿程序:kde