1、安裝docker
2、安裝docker-compose
3、安裝nginx
取最新版的 Nginx 鏡像 docker pull nginx:latest
運行容器 docker run --name nginx-test -p 8080:80 -d nginx
在容器(磁盤/var/lib/docker/overlay2)中相關位置分別是:
日誌位置:/var/log/nginx/
配置文件位置:/etc/nginx/
項目位置:/usr/share/nginx/html
4、安裝jdk、tomcat
docker pull openjdk
docker pull tomcat
運行容器
docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat
-p 8080:8080:將容器的 8080 端口映射到主機的 8080 端口。
-v $PWD/test:/usr/local/tomcat/webapps/test:將主機中當前目錄下的 test 掛載到容器的 /test。
4、安裝elk
mkdir /docker
從github上拉取部署elk所需資料
git clone https://github.com/deviantony/docker-elk.git
cd docker-elk
通過docker-compose創建並啓動容器
docker-compose up -d
可以看該elk容器的默認端口爲:
5000: Logstash TCP input.
9200: Elasticsearch HTTP
9300: Elasticsearch TCP transport
5601: Kibana
Kibana的web入口:http://localhost:5601
Elasticsearch 的web入口:http://localhost:9200
修改配置文件
vim /root/docker/docker-elk/elasticsearch/config/elasticsearch.yml
vim /root/docker/docker-elk/kibana/config/kibana.yml
vim /root/docker/docker-elk/logstash/config/logstash.yml
重啓 docker-compose start/restart/up
5、配置nginx日誌
安裝nginx
啓動nginx
/usr/local/src/nginx/sbin
./nginx
下載並安裝 Filebeat
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.6.2-x86_64.rpm sudo rpm -vi filebeat-7.6.2-x86_64.rpm
編輯配置
修改 /etc/filebeat/filebeat.yml
以設置連接信息:
vim /etc/filebeat/filebeat.yml
啓用和配置 nginx 模塊
sudo filebeat modules enable nginx
在 /etc/filebeat/modules.d/nginx.yml
文件中修改設置。
配置nginx日誌文件位置
啓動 Filebeat
setup
命令加載 Kibana 儀表板。如果儀表板已設置,請省略此命令。
sudo filebeat setup
sudo service filebeat start