当前位置: 首页 > news >正文

Docker深度解析:安装各大环境

安装 Nginx 实现负载均衡:

  1. 挂载 nginx html 文件:
    1. 创建过载目录:
      mkdir  -p /data/nginx/{conf,conf.d,html,logs}

    2. 注意:在挂载前需要对 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;}}}
      
    3. 启动 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
      # \ : 表示换行
  2. 挂载 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
    # \ : 表示换行
    1. 注意:换行符 \  后不能加空格,直接追加命令即可

Docker 安装 Tomcat:

  1. 把 Tomcat 镜像拉取下来:
    docker pull tomcat:8#启动tomcat
    docker run --name tomcat8 -d -p 8081:8080 tomcat:8--name:给容器起个名字
    -d:后台运行
    -p:进行端口映射

 Docker 安装 Nginx:

  1. 拉取 Nginx 镜像:
    docker pull nginx    #如果不指定版本,将会拉取最新版本#启动 nginx
    docker run --name mynginx -d -p 81:80 nginx
    --name:给容器起个名字
    -d:后台运行
    -p:进行端口映射
  2. 访问 81 端口:

Docker 安装 MySQL:

  1.  查询 MySQL 版本:
    docker search mysql
  2. 下载 MySQL:
    docker pull mysql:5.7    #这里拉取的是 5.7 版本镜像
  3. 启动 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:映射端口号
  4. 进入容器查看是否能进入 MySQL:
    docker exec -it 容器id bash
    #进入mysql
    mysql -uroot -p
    #输入上面 -e 后面设置的密码

Docker 运行底层原理:

  1. 启动 docker:
    systemctl  start docker
  2. Docker 是一个 CS 架构的系统,Docker 守护进程运行在主机上,然后通过 socket 连接从客户端访问,守护进程从客户端接收命令管理运行在主机上的容器
  3. 查询 docker 运行情况:
    ps aux | grep docker
http://www.lryc.cn/news/531957.html

相关文章:

  • 牛客 - 链表相加(二)
  • GPU 硬件原理架构(一)
  • C/C++编译器
  • Immutable设计 SimpleDateFormat DateTimeFormatter
  • 最新EFK(Elasticsearch+FileBeat+Kibana)日志收集
  • Vue 3 30天精进之旅:Day 15 - 插件和指令
  • 【实战篇】Android安卓本地离线实现视频检测人脸
  • 【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter3-语言基础
  • (dpdk f-stack)-堆栈溢出-野指针-内存泄露(问题定位)
  • HTML5 教程之标签(3)
  • 【蓝桥】动态规划-简单-破损的楼梯
  • 如何自定义软件安装路径及Scoop包管理器使用全攻略
  • 107,【7】buuctf web [CISCN2019 华北赛区 Day2 Web1]Hack World
  • STM32 ADC单通道配置
  • 【技海登峰】Kafka漫谈系列(二)Kafka高可用副本的数据同步与选主机制
  • Spring的三级缓存如何解决循环依赖问题
  • Ext文件系统
  • 回溯算法---数独问题
  • 蓝桥杯python基础算法(2-1)——排序
  • 【课程笔记】信息隐藏与数字水印
  • Page Assist实现deepseek离线部署的在线搜索功能
  • composeUI中Box 和 Surface的区别
  • 【LeetCode】5. 贪心算法:买卖股票时机
  • MySQL表的CURD
  • Java 如何覆盖第三方 jar 包中的类
  • VSCode中使用EmmyLua插件对Unity的tolua断点调试
  • 【数据结构】_链表经典算法OJ(力扣/牛客第二弹)
  • Spring Boot 2 快速教程:WebFlux优缺点及性能分析(四)
  • 自定义多功能输入对话框:基于 Qt 打造灵活交互界面
  • 基于springboot河南省旅游管理系统