docker运行mariaDB、nginx、tomcat等
2018-06-13 本文已影响0人
夏日橘子冰
【docker运行mariaDB】
docker pull mariadb
docker run -d -p 3306:3306 --name mariaDB \ #守护启动且给个别名
-v xxx/xxx/xxxx:/var/lib/mysql \ #挂载在宿主机数据文件夹
-e MYSQL_ROOT_PASSWORD=root \ #设置root密码
mariadb:latest #镜像
启动成功后,会发现在我们的挂载路径里出现一些mysql的文件和目录
【docker运行tomcat】
docker pull tomcat
docker run -p 8081:8080 --name myTomcat -d tomcat:latest
#不加-d则启动的日志会输出在屏幕上,-d表示后台运行
docker cp /application/docker/tomcat/latechWeb.war a51f97960054:/usr/local/tomcat/webapps/ #将本地项目包放入容器
无需重启
【docker运行nginx,实现反向代理】
1.docker pull nginx
2.在宿主机创建文件夹和文件,放nginx.conf和conf.d
nginx.conf
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
conf.d目录和nginx.conf同级,在conf.d下创建default.conf
配置反向代理如下:
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
location ~ \.json$ {
proxy_pass http://latechWebTomcat:8080; 注意:此处用的是tomcat容器的名字
}
}
3、启动nginx
docker run -p 8081:80 --name myNgid \ #指定端口号和容器名字
-v --link latechWebTomcat:latechWebTomcat \ #在启动nginx时,需要使用--link 链接到tomcat容器,容器间才能实现访问
-v /application/docker/nginx/html/:/usr/share/nginx/html \ #挂载项目html位置
-v /application/docker/nginx/nginx.conf:/etc/nginx/nginx.conf \ #挂载主配置文件
-v /application/docker/nginx/conf.d/:/etc/nginx/conf.d \ #挂载子配置文件
-d nginx:1.14
PS:
docker exec -it latechNginx /etc/init.d/nginx reload #重新加载nginx
【docker启动jar】
docker pull java:8u111
docker run --name memberService -p 9092:9092 -d \
-v /application/docker/service/latech.member.service.jar:/usr/member.service.jar \ #宿主机jar包挂载到容器内
java:8u111 \ #镜像名
java -jar /usr/member.service.jar #启动容器内的jar,这个路径和上面那个路径对应