Docker 部署 Nginx
# 1.搜尋映象 search 建議從docker搜尋,可以看到幫助文件
$ docker search nginx
# 2.下載映象
$ docker pull nginx
# 3.啟動 nginx 容器,-d 後臺執行,--name給容器命名,-p 通過宿主機的3344埠訪問nginx預設的80埠
$ docker run -d --name nginx01 -p 3344:80 nginx
# 4.檢視時候啟動成功
$ docker ps
# 5.執行測試
# 6.進入nginx容器
$ docker exec -it nginx01 /bin/bash
# 7.停止 nginx 容器
# exit
$ docker stop nginx01或者容器id
埠暴露的概念
問題:
每次修改檔案需要進入容器,很麻煩,如何在外部容器提供一個對映路徑,達到在宿主機修改檔名,容器內部就可以自動修改?
-v 資料卷!
Docker 部署 tomcat
# 官方使用
docker run -it --rm tomcat:9.0
# 我們之前的啟動都是後臺,停止了容器之後,容器還是可以查到 docker run -it --rm 一般用來測試,用完及刪除
# 下載再啟動
docker pull tomcat:9.0
# 啟動
docker run -d -p 3355:8080 --name tomcat01 tomcat
# 測試訪問沒有問題
# 進入容器
docker exec -it tomcat01 /bin/bash
# 發現問題:1.linux命令少了,2.沒有webapps。阿里映象的原因,預設是最小的映象,所以不必要的都剔除了
# 保證最小可執行的環境
# 顯示頁面,將webapps.dist下檔案拷貝到webapps目錄下
cp -r webapps.dist/* webapps
Docker 部署 es(elasticsearch) + kibana
# es 暴露的埠很多
# es 十分耗記憶體
# es 的資料一般需要放置到安全目錄!掛載
# --net somenetwork 網路配置
$ docker run -d --name elasticsearch --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:tag
# 下載啟動
$ docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2
# 啟動了 linux就卡住了
$ docker stats 檢視 cpu的狀態
# 修改配置檔案 -e 環境配置修改
$ docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.6.2
使用kibana 連線 es
- 問題
如何使用kibana連線es,網路如何才能連線過去。
本作品採用《CC 協議》,轉載必須註明作者和本文連結