zoukankan      html  css  js  c++  java
  • docker部署

     docker的部署与安装

    1.1. 安装Docker

     

    1.1.1. 安装工具

    sudo yum install -y yum-utils device-mapper-persistent-data lvm2

    1.1.2. 添加dockeryum

    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

    sudo yum makecache fast

    1.1.3. 安装Docker

    sudo yum install docker-ce docker-ce-cli containerd.io

    1.1.4. 启动&开机启动

    sudo systemctl start docker

    systemctl enable docker

    1.1.5. 测试Docker

    docker run hello-world

    能出出来一句话 hello docker”就是ok

    或者也可以通过查看版本来测试:docker version

     

     

    2.1. Docker镜像加速器(阿里云)

     

    配置加速器,否则下载镜像的时候回比较慢,默认是从docker hub下载

    vi /etc/docker/daemon.json

    {

      "registry-mirrors": ["https://5pfmrxk8.mirror.aliyuncs.com"]

    }

    sudo systemctl daemon-reload          //重新加载配置

    sudo systemctl restart docker           //重启docker

     

    或者直接执行:

    sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://5pfmrxk8.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker

    3.1. Docker服务操作

     

    启动dockersystemctl start docker

    停止dockersystemctl stop docker

    重启dockersystemctl restart docker

    查看docker状态:systemctl status docker

    开机启动:systemctl enable docker

    查看docker概要信息:docker info

    查看docker帮助文档:docker --help

     

     

     

    4. 部署项目-基础环境

     

    4.1.MySQL部署

    1.1.1. 拉取MySQL镜像

    docker pull mysql:5.7

     

    查看镜像

    docker images

    1.1.2. 创建MySQL容器

    docker run -di --name pethome_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

    -p 代表端口映射,格式为  宿主机映射端口:容器运行端口

    -e 代表添加环境变量  MYSQL_ROOT_PASSWORDroot用户的登陆密码

    1.1.3. 进入MySQL容器,登陆MySQL

    进入mysql容器

    docker exec -it pethome_mysql /bin/bash

    登陆mysql

    mysql -uroot -p123456

    1.1.4. 远程登陆MySQL

    开启远程访问

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';

    flush privileges;

     

    1)我们在我们本机的电脑navicat上去连接虚拟机Centos中的Docker容器,这里192.168.246.130是虚拟机操作系统的IP

    2)在本地客户端执行建库脚本

    执行“资源/建库语句/pethomedb.sql

    1.1.5. 查看容器IP地址

    我们可以通过以下命令查看容器运行的各种数据

    docker inspect pethome_mysql

    运行效果如下:

     

      

     

    我们可以看到我们的数据库服务器的IP172.16.0.2 

     

     

     

     

    4.2. Redis部署

    1.1. 

    1.1.1. 拉取Redis镜像

    centos是基础镜像

    docker pull redis

    1.1.2. 创建Redis容器

    docker run -di --name pethome_redis -p 6379:6379 redis --requirepass "123456"

     

    1.1.3. 客户端测试

    在你的本地电脑命令提示符下,用window版本redis测试

    redis-cli -h 192.168.246.135

     

     

     

    4.3 Nginx部署

    1.1.1. 拉取Nginx镜像

    docker pull nginx

    1.1.2. 创建Nginx容器

    docker run -di --name=pethome_nginx -p 80:80 nginx

    1.1.3. 测试Nginx

    浏览器地址栏输入: http://192.168.246.135 

     

     

     

     

    整理的docker代码是:

     

    nginx:

    启动: start nginx.exe localhost 默认端口是80
    停止: nginx.exe -s stop
    重新加载: nginx.exe -s reload 修改了配置文件的时候需要重新加载.

    Docker
    启动docker:systemctl start docker
    停止docker:systemctl stop docker
    重启docker:systemctl restart docker
    查看docker状态:systemctl status docker


    Docker 镜像的操作
    查看镜像:docker images
    搜索镜像:docker serach [镜像名字]
    镜像下载:docker pull [镜像名字:版本]
    镜像的移除:docker rmi [镜像名字:版本]/[镜像的id]
    移除全部镜像:docker rmi `docker images -q`

    Docker 容器操作
    查看运行的容器:docker ps -a
    启动容器:docker run
    -i:表示运行容器
    -t:表示容器启动后会进入容器命令行(交互式)。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
    --name :为创建的容器命名。
    ex:docker run -it --name=[自定义名字] 镜像名字:版本 /bin/bash
    注:启动容器并进入命令行 退出 exit 会关闭容器
    -d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
    守护式: docker run -i -d --name=容器名字 -p=外端口:内端口 镜像名字:版本号
    注:启动容器 在后台运行

    -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射
    -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
    ex: docker run -id --name=[容器名字] -p=外端口:内端口 -v=外部目录路径:内部目录路径 镜像名字:版本号


    其他命令:

    进入守护式容器:docker exec -it 容器的名字 /bin/bash [使用exit命令不会关闭容器]
    关闭启动的容器:docker stop [容器的名字]
    启动关闭状态的容器:docker start [容器的名字]
    删除容器:docker rm [容器的名字/ID]
    删除所有容器:docker rm `docker ps -a -q`
    查看容器的IP: docker inspect [容器的名字]


    实战:
    1.安装mysql
    docker run -id --name=mysql57 -p=3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

    2.安装redis
    docker run -id --name=redis -p=6379:6379 redis --requirepass "123456"


    构建镜像:
    1.基于容器构建【就是把一个运行的容器再次打包】
    docker commit [容器名字] 新镜像的名字:版本号



















     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

        server {

            listen       80;

            server_name  admin.pethome.com;

            location / {

                root   pethome_admin;

                index  index.html;

            }

        }

        server {

            listen       80;

            server_name  www.pethome.com;

            location / {

                root   pethome_front;

                index  home.html;

            }

        }

    https://blog.csdn.net/SEVENY_/article/details/103856623

  • 相关阅读:
    自然语言交流系统 phxnet团队 创新实训 项目博客 (十一)
    install ubuntu on Android mobile phone
    Mac OS, Mac OSX 与Darwin
    About darwin OS
    自然语言交流系统 phxnet团队 创新实训 项目博客 (十)
    Linux下编译安装qemu和libvirt
    libvirt(virsh命令总结)
    深入浅出 kvm qemu libvirt
    自然语言交流系统 phxnet团队 创新实训 项目博客 (九)
    自然语言交流系统 phxnet团队 创新实训 项目博客 (八)
  • 原文地址:https://www.cnblogs.com/china10/p/14551622.html
Copyright © 2011-2022 走看看