美文网首页
Docker入门

Docker入门

作者: Impassable_time | 来源:发表于2018-07-25 10:57 被阅读0次

    一、linux 相关

    #启动\停止 docker 服务
    systemctl start docker
    systemctl stop docker
    # 重启 docker
    systemctl restart docker.service
    

    二、查看docker信息(version、info)

    # 查看docker版本
    $docker version
    # 显示docker系统的信息
    $docker info
    

    三、对image的操作(search、pull、images、rmi、history)

    # 服务器上查找 image
    $docker search image_name
    # 下载image
    $docker pull image_name
    # 列出镜像列表; -a, --all=false Show all images;
    $docker images
    # 删除一个或者多个镜像;
    $docker rmi image_name
    # 显示一个镜像的历史
    $docker history image_name
    
    例子:
    1)比如想要TOMCAT
    docker search  tomcat
    #会出现很多,然后选择其中一个。
    docker pull  name
    即可拥有
    2)比如想要ORACLE
    http://www.jb51.net/article/110520.htm
    

    四、镜像生成容器(run)

    # 在容器中运行"echo"命令,输出"hello word"
    $docker run image_name echo "hello word"
    # 交互式进入容器中
    $docker run -i -t image_name /bin/bash
    # 机器启动就自动运行容器 --restart=always
    $docker run --restart=always image_name
    # 在容器中安装新的程序
    $docker run image_name apt-get install -y app_name
    4. 查看容器(ps)
    容器存放位置/var/lib/docker/containers
    # 列出当前所有正在运行的container
    $docker ps
    # 列出所有的container
    $docker ps -a
    # 列出最近一次启动的container
    $docker ps -l
    
    10.14 环境 上启动 its 所有项目的镜像
    sudo docker run --name pub -p 4014:8080 -p 14231:14231 -p 9994:9994 -p 19999:19999 -d -v /home/its/tomcat_its/1-webapp-pub:/usr/local/tomcat/webapps --privileged=true   -m 512m -e JAVA_OPTS='-Xmx512m' 192.168.10.14:5000/tomcat
    
    sudo docker run --name other -p 4024:8080 -d -v /home/its/tomcat_its/2-webapp-other:/usr/local/tomcat/webapps --privileged=true    -m 212m -e JAVA_OPTS='-Xmx212m' 192.168.10.14:5000/tomcat
    
    sudo docker run --name ivmanage -p 4034:8080 -p 9997:9997  -d -v /home/its/tomcat_its/3-webapp-ivmanage:/usr/local/tomcat/webapps --privileged=true     -m 512m -e JAVA_OPTS='-Xmx512m' 192.168.10.14:5000/tomcat
    
    sudo docker run --name font -p 4044:8080 -d -v /home/its/tomcat_its/4-webapp-font:/usr/local/tomcat/webapps --privileged=true     -m 312m -e JAVA_OPTS='-Xmx312m' 192.168.10.14:5000/tomcat
    
    sudo docker run --name trade1 -p 4054:8080 -p 9999:9999 -p 9983:9983 -d -v /home/its/tomcat_its/5-webapp-trade1:/usr/local/tomcat/webapps  --privileged=true  -m 412m -e JAVA_OPTS='-Xmx412m' 192.168.10.14:5000/tomcat
    
    sudo docker run --name trade2 -p 4064:8080 -p 10001:10001 -p 9998:9998 -d -v /home/its/tomcat_its/6-webapp-trade2:/usr/local/tomcat/webapps  --privileged=true   -m 412m -e JAVA_OPTS='-Xmx412m' 192.168.10.14:5000/tomcat
    
    sudo docker run --name risk -p 4074:8080 -d -v /home/its/tomcat_its/7-webapp-risk:/usr/local/tomcat/webapps  --privileged=true   -m 412m -e JAVA_OPTS='-Xmx412m' 192.168.10.14:5000/tomcat
    
    @简单说明:
    run - 启动,  --name  取一个名字 , -p 端口映射, -v 把webapp的地址移动到外面,方便部署。
    --privileged=true  添加权限,不然会报错, -m 限定 容器 内存大小。 最后容器名称
    
    之后启动容器: sudo docker ps -a , 找到所有的容器ID《CONTAINER ID》
    然后 sudo docker start CONTAINERID  即可
    
    10.14 环境 上启动 its_citic1 所有景象脚本

    五、保存对容器的修改(commit)

    当你对某一个容器做了修改之后,可以把对容器的修改保存下来,这样下次可以从保存后的最新状态运行该容器。
    # 保存对容器的修改; -a, --author="" Author; -m, --message="" Commit message
    $docker commit ID new_image_name
    

    六、对容器的操作(rm、stop、start、kill、logs、diff、top、cp、restart、attach)

    # 删除所有容器
    $docker rm `docker ps -a -q`
    # 删除单个容器;
    $docker rm Name/ID
    # 停止、启动、重启、杀死一个容器
    $docker stop Name/ID
    $docker start Name/ID
    $docker restart Name/ID
    $docker kill Name/ID
    # 从一个容器中取日志;
    $docker logs Name/ID
    # 列出一个容器里面被改变的文件或者目录,list列表会显示出三种事件,A 增加的,D 删除的,C 被改变的
    $docker diff Name/ID
    # 显示一个运行的容器里面的进程信息
    $docker top Name/ID
    # 从容器里面拷贝文件/目录到本地一个路径
    $docker cp Name:/container_path to_path
    $docker cp ID:/container_path to_path
    # 附加到一个运行的容器上面,SSH进入容器
    $docker attach ID
    

    七、保存和加载镜像(save、load)

    当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像。
    # 保存镜像到一个tar包; -o, --output="" Write to an file
    $docker save image_name -o file_path
    # 加载一个tar包格式的镜像; -i, --input="" Read from a tar archive file
    $docker load -i file_path
    
    # 例子
    $docker save image_name > /home/save.tar
    # 使用scp将save.tar拷到机器b上,然后:
    $docker load < /home/save.tar
    

    八、登录发布镜像(login push)

    $docker login
    # 发布docker镜像
    $docker push new_image_name
    

    九、根据Dockerfile 构建出一个容器

    $docker build -t image_name Dockerfile_path
    

    相关文章

      网友评论

          本文标题:Docker入门

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