Docker深度解析:安装各大环境
安装 Nginx 实现负载均衡:
-
挂载 nginx html 文件:
- 创建过载目录:
mkdir -p /data/nginx/{conf,conf.d,html,logs}
- 注意:在挂载前需要对 conf/nginx.conf 文件进行编写
worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
- 启动 docker 容器:
docker run --name nginx8 -d -p 81:80 -v /data/nginx/html:/usr/share/nginx/html \ -v /data/nginx/conf:/etc/nginx \ -v /data/nginx/logs:/var/log/nginx nginx8 # \ : 表示换行
- 创建过载目录:
-
挂载 nginx.conf 文件和日志文件:
docker run --name nginx8 -d -p 81:80 -v /data/nginx/html:/usr/share/nginx/html \ -v /data/nginx/conf:/etc/nginx \ -v /data/nginx/logs:/var/log/nginx nginx8 # \ : 表示换行
- 注意:换行符 \ 后不能加空格,直接追加命令即可
Docker 安装 Tomcat:
-
把 Tomcat 镜像拉取下来:
docker pull tomcat:8 #启动tomcat docker run --name tomcat8 -d -p 8081:8080 tomcat:8 --name:给容器起个名字 -d:后台运行 -p:进行端口映射
Docker 安装 Nginx:
-
拉取 Nginx 镜像:
docker pull nginx #如果不指定版本,将会拉取最新版本 #启动 nginx docker run --name mynginx -d -p 81:80 nginx --name:给容器起个名字 -d:后台运行 -p:进行端口映射
-
访问 81 端口:
Docker 安装 MySQL:
- 查询 MySQL 版本:
docker search mysql
- 下载 MySQL:
docker pull mysql:5.7 #这里拉取的是 5.7 版本镜像
- 启动 MySQL 容器:
docker run --name mysql3308 -e MYSQL_ROOT_PASSWORD=root -d -p 3308:3306 mysql:5.7 #--name:给容器命名 #-e MYSQL_ROOT_PASSWORD:设置环境变量,配置 Mysql 的密码 #-d:后台运行 #-p:映射端口号
- 进入容器查看是否能进入 MySQL:
docker exec -it 容器id bash #进入mysql mysql -uroot -p #输入上面 -e 后面设置的密码
Docker 运行底层原理:
- 启动 docker:
systemctl start docker
- Docker 是一个 CS 架构的系统,Docker 守护进程运行在主机上,然后通过 socket 连接从客户端访问,守护进程从客户端接收命令管理运行在主机上的容器
- 查询 docker 运行情况:
ps aux | grep docker