• Docker高级使用


    Docker卸载应用程序

    先删除容器,在删除镜像

    查询容器

    docker ps –a

    使用容器id删除容器

    docker rm 18e672ecd8ed

    查询镜像

    docker images

    使用镜像id删除镜像

    docker rmi d23bdf5b1b1b

    docker ps 命令“

    正在运行的容器

    docker ps -a  查询所有的容器 不论运行与否

     卸载:

     先 docker  ps  找到容器的编码

    停止掉正在运行的容器 :

    docker stop 161e0e09efd0

    然后删除掉 docker rm  xxx,yyy,zzz    可以删除多个

     

    然后再去删除镜像文件:

    docker rmi aa56bf798f56

     

    此时没有啦:

    Docker安装Nginx后的配置: 

            通过Docker安装的Nginx配置nginx.conf

            Docker通过容器运行Nginx 安装的目录在容器中       

           查看容器id: docker ps  

            /容器id/etc/nginx            默认情况下安装在容器的etc目录 

    容器管理

    进入到容器

    docker container exec -it 9b0702f0b3fd /bin/bash

    默认情况下软件安装的目录的/ect目录下

    Exit 退出

    cd   etc/nginx

    修改 nginx.conf就OK了

    1. 下载Nginx镜像文件

          

    docker pull nginx

    docker images

           

           2.创建挂载目录

             挂载创建两个目录 进行同步  docker的软件如何修改配置文件?

             是通过容器挂在外部配置文件

            

            首先停止掉容器:  docker stop 9b0702f0b3fd

             然后删除掉容器: 删除掉  docker rm 9b0702f0b3fd

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

             然后进入到: data/nginx/conf 创建 nginx.conf的nginx配置文件 (详情看下面 3.编写Nginx配置文件)

         注意: 下面指令如果想看日志: 去掉 -d 

             然后使用新的命令:docker run --name mynginx -d -p 80:80 -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs:/var/log/nginx -d docker.io/nginx

             解读上面指令:  使用挂载方式 外部(宿主机)的配置文件覆盖内部容器配置文件 

                data/nginx 宿主机目录

                /etc/nginx/config 容器目录

       

          3.编写Nginx配置文件
                 

    user nobody;
    worker_processes 1;

    #error_log logs/error.log;
    #error_log logs/error.log notice;
    #error_log logs/error.log info;

    #pid logs/nginx.pid;


    events {
    worker_connections 1024;
    }


    http {
    include 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 logs/access.log main;

    sendfile on;
    #tcp_nopush on;

    #keepalive_timeout 0;
    keepalive_timeout 65;

    #gzip on;

    ## upstream backServer{
    ## server 192.168.8.159:8080 weight=1;
    ## server 192.168.8.159:8081 weight=1;
    ## }

    server { ##监听端口号
    listen 80;
    ##监听域名
    server_name www.tooov5.com;

    location /api-a { ##location拦截请求url地址

    ###走反向代理
    proxy_pass http://192.168.8.159:8080/;
    index index.html index.htm;

    }

         4.启动容器

          

    docker run --name mynginx -d -p 80:80  -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf  -v /data/nginx/logs:/var/log/nginx -d docker.io/nginx

       5. 查看容器

                                                            docker ps

     访问:成功

    验证下:

    进入到容器中: docker container exec -it 9b0702f0b3fd /bin/bash

    然后: 

    /etc/nginx

      查看:已经同步过来了!

    容器和外面保持一致了奥!~~~

    启动Nginx 容器:

     docker run -d -p 81:80 nginx 

    查看

     ps aux|grep nginx

    Docker玩儿MySQL

        注意一个镜像文件可以多个容器运行哦

        

    1.查询mysql版本

    docker search mysql

    2.下载MySQL5.7版本

    docker pull mysql:5.7  (这里选择的是第一个mysql镜像, :5.7选择的5.7版本)

    此时查看:

    3.等待下载完成、创建MySQL容器

    docker create --name mysql3308 -e MYSQL_ROOT_PASSWORD=root -p 3308:3306 mysql:5.7

     创建容器名称为mysql3308,密码为root

    1. 启动容器

                   docker start mysql3308  (指定名称哦)

    1. 进入到容器

                  docker exec -it mysql3308 bash

    1. mysql连接

                  mysql -uroot –p

     也可以用客户端连接,3308这个端口哦 注意

     ps: mysql的安装目录 配置文件在etc下面   如果需要配置主从复制 那么把 mysql.cnf   挂载在外部

    总结Docker常用命令

    docker images  查看镜像文件

    docker ps  查看正在运行的容器

    docker ps –a  查看所有的容器

    docker container exec -it f0b1c8ab3633 /bin/bash  进入到容器

    exit 退出

    docker version  查看版本

    docker run -d -p 81:80 nginx 启动nginx容器

    docker rmi imgageid 删除镜像

    docker rm 容器id 删除容器

    对于挂载的总结:

      默认情况下安装在 容器的etc目录

      容器挂载外部配置文件 –v

     使用挂载方式,外部的配置文件覆盖内部容器配置文件

    docker清理未运行的容器:

    sudo docker rm $(sudo docker ps -a -q)

    docker logs --tail="10"  容器名字           查询容器

  • 相关阅读:
    Qt Qaction和触发函数建立连接的方法
    Qt QChart缩放后坐标轴间隔取整
    Qt 编译时报错“退出,退出代码2”的原因
    Qt Qchart 中清空绘图
    Qt QChartView 如何放入widget
    Qt QChart之曲线图,饼状图,条形图使用
    Qt 实现控件不响应鼠标点击事件
    Qt css样式大全(整理版)
    Qt 加载qss文件
    Qt 如何处理密集型耗时的事情(频繁调用QApplication::processEvents)
  • 原文地址:https://www.cnblogs.com/toov5/p/10343882.html
Copyright © 2020-2023  润新知