zoukankan      html  css  js  c++  java
  • docker:安装mysql多个

    
    
    Docker 容器镜像删除

    docker commit了一个镜像之后想删除旧的镜像,出现以下报错

    
    

    Error response from daemon: conflict: unable to delete 6f8214d56bfc (cannot be forced) - image has dependent child images

    
    

    解决思路:

    
    

    docker save保存容器

    
    

    docker images

    
    

    docker save REPOSITORY > XX.tar

    
    

    删除镜像容器

    
    

    docker ps -a

    
    

    docker rm CONTAINER ID

    
    

    docker images

    
    

    docker rmi IMAGE ID

    
    

    最后再导入回去

    
    

    docker load < XX.tar





    1.停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q) 如果想要删除所有container的话再加一个指令: docker rm $(docker ps -a -q) 2.查看当前有些什么images docker images 3.删除images,通过image的id来指定删除谁 docker rmi
    <image id> 想要删除untagged images,也就是那些id为<None>的image的话可以用 docker rmi $(docker images | grep "^<none>" | awk "{print $3}") 要删除全部image的话 docker rmi $(docker images -q)
    
    
    

    docker:安装mysql多个
    文章来源:https://www.cnblogs.com/hello-tl/p/9238298.html 
    
    1.首先安装docker
    
      参照一下网址安装docker
    
      docker:安装 https://www.cnblogs.com/hello-tl/p/8901132.html
    
      参照安装一个mysql
    
      docker:安装mysql https://www.cnblogs.com/hello-tl/p/9234429.html
    
    2.创建文件
    # mkdir /data
    # mkdir /data/mysql
    # mkdir /data/mysql/data5.6
    # mkdir /data/mysql/data5.7
    # mkdir /data/mysql/data8.0
    3.添加镜像
    # docker pull mysql:5.6
    # docker pull mysql:5.7
    # docker pull mysql:8.0
    4.启动镜像
    # docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.6 --restart always -v /data/mysql/data5.6:/var/lib/mysql -p 3306:3306 mysql:5.6
    # docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.7 --restart always -v /data/mysql/data5.7:/var/lib/mysql -p 3307:3306 mysql:5.7
    # docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql8.0 --restart always -v /data/mysql/data8.0:/var/lib/mysql -p 3308:3306 mysql:8.0
    5.打开端口
    //开启防火墙
    # systemctl start firewalld
    //开启3306端口
    # firewall-cmd --zone=public --add-port=3306/tcp --permanent
    //开启3307端口
    # firewall-cmd --zone=public --add-port=3307/tcp --permanent
    //开启3308端口
    # firewall-cmd --zone=public --add-port=3308/tcp --permanent
    //重启防火墙
    # systemctl restart firewalld.service
    6.本地连接测试
    
    
    
    7.如果mysql是 8 版本以上应该会出一下错误
    
    连接Docker启动的mysql出现:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£
    
    解决方案
      1.进入mysql容器
    
        docker exec -it mysql /bin/bash
    
      2.进入mysql
    
        mysql -uroot -p123456
    
      3.修改密码
    
        ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
    
    文章来源:https://www.cnblogs.com/hello-tl/p/9238298.html 
    
    LINUX 简单的,但只有天才才能知道他的简单
    docker images : 列出本地镜像
    docker pull : 从镜像仓库中拉取或者更新指定镜像
    
    docker run :创建一个新的容器并运行一个命令
    -d: 后台运行容器,并返回容器ID
    -p: 端口映射,格式为:主机(宿主)端口:容器端口
    --name="nginx-lb": 为容器指定一个名称
    -v:目录映射,格式为:主机目录:容器目录
    
    docker rm :删除一个或多个容器
    docker start :启动一个或多少已经被停止的容器
    docker stop :停止一个运行中的容器
    docker kill :杀掉一个运行中的容器(强制)
    docker restart :重启容器
    docker port :列出指定的容器的端口映射,或者查找将PRIVATE_PORT NAT到面向公众的端口。
    
    docker logs : 获取容器的日志
    -f : 跟踪日志输出
    --since :显示某个开始时间的所有日志
    -t : 显示时间戳
    --tail :仅列出最新N条容器日志
    
    docker exec -i -t  mynginx /bin/bash:在容器mynginx中开启一个交互模式的终端,即通过SSH协议进入容器
    
    docker ps : 列出容器
    -a :显示所有的容器,包括未运行的。
    
    docker cp:拷贝主机docker cp /www/runoob 96f7f14e99ab:/www/
  • 相关阅读:
    MST(prim)+树形dp-hdu-4756-Install Air Conditioning
    Java常用排序算法+程序员必须掌握的8大排序算法
    高可用可伸缩架构实用经验谈
    MYSQL索引失效的各种情形总结
    MySQL使用索引的场景及真正利用索引的SQL类型
    MySQL数据库索引的4大类型以及相关的索引创建
    JVM调优浅谈
    dubbo作为消费者注册过程分析--????
    webservice 协议
    你应该知道的 RPC 原理
  • 原文地址:https://www.cnblogs.com/Struts-pring/p/10821133.html
Copyright © 2011-2022 走看看