• 04-Docker应用部署


    MySQL部署

    需求

    在Docker容器中部署MySQL,并通过外部MySQL客户端操作MySQL Server

    实现步骤
    1. 搜索MySQL镜像

      docker search mysql
      
      
      • 1
      • 2
    2. 拉取MySQL镜像

      docker pull mysql:5.6
      
      
      • 1
      • 2
    3. 创建MySQL容器、设置端口映射、目录映射

      # 在/root目录下创建mysql目录用于存储mysql数据信息
      mkdir ~/mysql
      cd ~/mysql
      
      • 1
      • 2
      • 3
      docker run -id \
      -p 3307:3306 \
      --name c_mysql \
      -v $PWD/conf:/etc/mysql/conf.d \
      -v $PWD/logs:/logs \
      -v $PWD/data:/var/lib/mysql \
      -e MYSQL_ROOT_PASSWORD=123456 \
      mysql:5.7
      
      # =========参数说明============
       -	-p 3307:3306		将容器的3306端口映射到宿主机的3307端口
       -	-v $PWD/conf:/etc/mysql/conf.d		将主机当前目录下的conf/my.cnf挂载到容器的/etc/mysql/my.cnf配置目录
       -	-v $PWD/logs:/logs		将主机当前目录下的logs目录挂载到容器的logs日志目录
       -	-v $PWD/data:/var/lib/mysql		将主机当前目录下的data目录挂载到容器的/var/lib/mysql数据目录
       -	-e MYSQL_ROOT_PASSWORD=123456		初始化root用户密码
       
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      # 进入mysql容器
      docker exec -it c_mysql /bin/bash
      
      • 1
      • 2
      # 登录mysql
      mysql -uroot -p123456
      # 指定ip和端口号登录mysql
      mysql -h  127.0.0.1 -u root -P3307 -p123456
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
    4. 操作容器中的MySQL

    CRUD
    
    • 1

    Tomcat部署

    需求

    在Docker容器中部署Tomcat,并通过外部机器访问Tomcat部署的项目

    实现步骤
    1. 搜索tomcat镜像

      docker search tomcat
      
      
      • 1
      • 2
    2. 拉取tomcat镜像

      docker pull tomcat
      
      
      • 1
      • 2
    3. 创建容器、设置端口映射、目录映射

      mkdir ~/tomcat
      cd ~/tomcat
      
      • 1
      • 2
      docker run -id --name c_tomcat \
      -p 8081:8080 \
      -v $PWD:/usr/local/tomcat/webapps \
      tomcat
      
      # ======参数说明=====
      -		-p 8081:8080	将容器的8080端口映射到主机的8081端口
      -		$PWD:/usr/local/tomcat/webapps		将主机中当前目录挂载到容器的webapps
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
    4. 部署项目

      宿主机的tomcat文件夹已经映射到了容器的webapps目录了,所以将部署的war包直接放到宿主机的tomcat文件夹下面就可以了
      
      
      • 1
      • 2
    5. 测试访问

      127.0.0.1:8081/test/index.html
      
      • 1

    Nginx部署

    需求

    在Docker容器中部署nginx,并通过外部机器访问nginx

    实现步骤
    1. 搜索Nginx镜像

      docker search nginx
      
      
      • 1
      • 2
    2. 拉取Nginx镜像

      docker pull nginx
      
      
      • 1
      • 2
    3. 创建容器、设置端口映射、目录映射

      # 在/root目录下创建nginx目录用于存储nginx数据信息
      mkdir ~/nginx
      cd ~/nginx
      mkdir conf
      cd conf
      # 在~/nginx/conf/下创建nginx.conf文件,粘贴下面内容
      vim nginx.conf
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      
      
      
      • 1
      • 2
      docker run -id --name c_nginx \
      -p 88:80 \
      -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf \
      -v $PWD/logs:/var/log/nginx \
      -v $PWD/html:/usr/share/nginx/html \
      nginx
      
      
      
      
      docker run -id --name c_nginx \
      -p 88:80 \
      -v $PWD/html:/usr/share/nginx/html \
      nginx
      
      # ======参数说明=====
      -		-p 80:80		将容器的80端口映射到宿主机的80端口
      -		-v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf		将主机当前目录下的/conf/nginx.conf挂载到容器的/etc/nginx/nginx.conf配置目录
      -		-v $PWD/logs:/var/log/nginx日志目录		将主机目录下的logs目录挂载到容器的/var/log/nginx日志目录
      
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      docker exec -it c_nginx /bin/bash
      
      
      • 1
      • 2
    4. 测试访问

      Redis部署

      需求

      在Docker容器中部署Redis惊喜那个,并通过外部访问

      步骤
      1. 搜索Redis镜像

        docker search redis
        
        
        • 1
        • 2
      2. 拉取Redis镜像

        docker pull redis:5.0
        
        
        • 1
        • 2
      3. 创建容器

        docker run -id --name c_redis -p 6379:6379 redis:5.0
        
        
        • 1
        • 2
      4. 测试访问

        ./redis-cli.exe -h 192.168.159.135 -p 6379
        
        [root@Baba ~]# /usr/local/redis/redis-5.0.7/src/redis-cli -h 127.0.0.1 -p 6378
        127.0.0.1:6378> set aaa '1111'
        OK
        127.0.0.1:6378> get aaa
        "1111"
        127.0.0.1:6378> exit
        [root@Baba ~]#
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
    5. 相关阅读:
      智能云门禁解决方案来了
      69: 偷菜时间表(python)
      文件夹正在使用,无法删除 无法重命名等操作怎么办?
      Kotlin或将超越Go?
      TypeScript基础之object、Object、{}区别
      java家教信息计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
      初识React
      菁染料CY3/CY5/CY7标记链霉亲和素/胰岛素,CY3/CY5/CY7-Streptavidin/Insulin
      渗透工具-白帽安全工程师Kali linux系统
      Jetson Nano下载C++ 版本的GPIO 并配置进qt项目
    6. 原文地址:https://blog.csdn.net/m0_46636892/article/details/133046200