某些情况下,我们需要快速运行某个服务,如测试环境。本文将收藏一些使用docker 运行一些常见的服务。
#centos环境
docker run -itd --name centos centos:latest
#ubuntu环境
docker run -itd --name ubuntu ubuntu
#nginx环境
docker run --name nginx -p 80:80 -d nginx
docker run --name nginx -p 80:80 -d -v /path/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /some/content:/usr/share/nginx/html:ro nginx
#apache
docker run -p 80:80 -v $PWD/www/:/usr/local/apache2/htdocs/ -v $PWD/conf/httpd.conf:/usr/local/apache2/conf/httpd.conf -v $PWD/logs/:/usr/local/apache2/logs/ -d httpd
#php环境
docker run -it --rm -v "$PWD":/app -w /app php:alpine php your-script.php
#node环境
docker run -itd --name node node
#Mysql
docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
#tomcat
docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat
#python
docker run -v $PWD/myapp:/usr/src/myapp -w /usr/src/myapp python:3.5 python helloworld.py
-v $PWD/myapp:/usr/src/myapp: 将主机中当前目录下的 myapp 挂载到容器的 /usr/src/myapp
-w /usr/src/myapp: 指定容器的 /usr/src/myapp 目录为工作目录
#WordPress,可以手动指定变量值,WORDPRESS_DB_USER 缺省为 root,WORDPRESS_DB_PASSWORD 缺省为连接 mysql 容器的环境变量 MYSQL_ROOT_PASSWORD 的值,WORDPRESS_DB_NAME 缺省为 wordpress
docker run --name some-wordpress --link some-mysql:mysql -d wordpress
#redis
docker run -d --name redis -p 6379:6379 redis
#mongo
docker run -itd --name mongo -p 27017:27017 mongo --auth
#elasticsearch
docker run -d \
--name es \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
-e "discovery.type=single-node" \
-v es-data:/usr/share/elasticsearch/data \
-v es-plugins:/usr/share/elasticsearch/plugins \
--privileged \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
elasticsearch:7.17.5
#logstash
docker run -d --name logstash \
--privileged=true \
-p 5044:5044 -p 9600:9600 \
-v $PWD/logstash/data/:/usr/share/logstash/data \
-v $PWD/logstash/config/:/usr/share/logstash/config \
-v $PWD/logstash/pipeline/:/usr/share/logstash/pipeline \
logstash:7.12.1
#kibana
docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
--network=es-net \
-p 5601:5601 \
kibana:7.17.5
#像elk这些服务由于需要挂载自己修改过的文件,可以先运行一个容器,将所需配置文件拷贝到主机相应的目录进行修改后重新挂载创建容器
以上都是一些简单的运行服务的命令,有的可能需要更多的配置。其他服务后续陆续更新
更多关于docker容器或者运维方面相关的知识,请前往博客主页。
本文提供了一系列使用Docker快速运行各种服务的命令,包括CentOS、Ubuntu基础环境,以及Nginx、Apache、PHP、Node.js、MySQL、Tomcat、Python等应用服务器。此外,还涉及了WordPress、Redis、MongoDB等数据库服务,以及Elasticsearch、Logstash和Kibana等日志处理和分析工具。部分命令可能需要额外配置,适合快速搭建测试环境。
586

被折叠的 条评论
为什么被折叠?



