美文网首页
Docker基本操作

Docker基本操作

作者: 黑小马_ | 来源:发表于2018-12-05 15:39 被阅读0次

    整理的Docker常用操作有点乱,先留这自己用后面在更新

    A,更新源
    我当前是root用户,所以不用加sudo。
    1)打开配置文件

    gedit /etc/docker/daemon.json
    

    2)修改配置文件
    这里用的是网易的镜像,你也可以用阿里的、豆瓣的,还有一些学校的,像中科大、清华什么的,只要把那个网址改掉就好了。改完之后把文件保存好。

    {
      "registry-mirrors": ["http://hub-mirror.c.163.com"]
    }
    
    $ docker ps // 查看所有正在运行容器
    $ docker stop containerId // containerId 是容器的ID
    
    $ docker ps -a // 查看所有容器
    $ docker ps -a -q // 查看所有容器ID
    
    $ docker stop $(docker ps -a -q) //  stop停止所有容器
    $ docker  rm $(docker ps -a -q) //   remove删除所有容器
    $ docker  rmi $(docker ps -a -q) //   删除镜像
    

    安装镜像:

    docker pull centos
    

    启动镜像,或者叫通过镜像创建容器

    docker run -ti 7583 /bin/bash
    docker run -P -it ubuntu /bin/bash
    

    可以查看存在的容器

    docker ps -a 
    

    停止容器

    docker stop id
    

    启动容器

    docker start id
    

    然后我们使用docker ps查看到该容器信息,接下来就使用docker attach进入该容器

    $ sudo docker attach 44fc0f0582d9  
    

    exit后不会退出

    docker exec -it ContainerName /bin/bash
    docker exec -it ContainerName sh
    docker exec -it ContainerID sh
    

    DOCKER 给运行中的容器添加映射端口
    a, 获取容器ip

        docker inspect $container_name | grep IPAddress
    

    b. 添加转发规则

        iptables -t nat -A DOCKER -p tcp --dport $host_port -j DNAT --to-destination $docker_ip:$dock
    
    #将容器commit成为一个镜像
    docker commit containerA  newImageB
    #运行容器
    docker run  -p 8080:8080 -p 8081:8081 -v /home/data/:/home/data/ -dt newImageB
    

    在容器外部执行容器内部的sh脚本

    1626a76918ae 容器id

    docker exec -i 1626a76918ae  bash /home/start.sh
    

    将镜像存储

    docker save nginx:latest > /root/docker-images/nginx.tar
    

    导入镜像文件

    docker load --input /root/docker-images/nginx.tar
    

    通过符号的方式来导入

    docker load < /root/docker-images/nginx.tar
    

    文件拷贝

    将主机./RS-MapReduce目录拷贝到容器30026605dcfe的/home/cloudera目录下。

    docker cp RS-MapReduce 30026605dcfe:/home/cloudera
    

    将容器30026605dcfe的/home/cloudera/RS-MapReduce目录拷贝到主机的/tmp目录中。

    docker cp  30026605dcfe:/home/cloudera/RS-MapReduce /tmp/
    

    相关文章

      网友评论

          本文标题:Docker基本操作

          本文链接:https://www.haomeiwen.com/subject/rxiicqtx.html