• docker 命令和使用


    docker stats  查看cpu,内存占用情况

    systemctl start docker  启动 docker

    systemctl enable docker  加入开机启动

    systemctl restart docker  重启 docker

    =============================================================

    docker search mysql  搜索 mysql 这个镜像文件(https://hub.docker.com/)必须注册登录才可以搜索

    docker pull 文件名  下载镜像文件

    docker images  查看镜像文件(这个命令是查看镜像)

    docker ps  查看正在运行的容器(这个命令是查看容器)

    docker start 容器id  启动容器

    docker stop 容器id  停止正在运行的容器

    docker ps -a  查看所有的容器(包括运行中的,不运行的)

    docker run tomcat  创建容器,并且启动 tomcat 容器(多次使用,会启动多个,一个镜像可以被多个容器启动)

    docker run --name xxx tomcat  创建启动一个tomcat容器,并且命名为  xxx(一旦起名字了,就不可多次启动同一个名字的容器)

    -p 指定映射端口

    docker run --name xxx -p 8081:8080 tomcat   (前台启动,会打打印启动信息,可用于排查故障)指定外部端口(8081)映射到内部端口(8080),外界可以通过 8081 来访问该容器

    -d 后台启动

    docker run --name xxx -p 8081:8080 -d tomcat   (后台启动,不会打印启动信息)指定外部端口(8081)映射到内部端口(8080),外界可以通过 8081 来访问该容器

    docker exec -it 容器id bash  进入容器中(容器要启动状态才能进入)

    docker inspect 容器id  查看该容器的 ip 信息(在容器外查看)

    docker rmi 镜像id  删除镜像

    docker rm 容器id  删除容器(镜像启动后,就变成容器,应该说每个镜像,都会在启动后,单独变成一个容器在运行)

    把一个容器反编译成一个镜像,使用 commit :

    docker commit -m="mongo tomcat" -a="mongo"  容器id mongo:1.0

    -m="mongo tomcat" 表示:要提交的描述信息

    -a="mongo" 表示作者为:mongo

    mongo:1.0 表示镜像文件名称

    * 数据卷:就是用来外部和内部共享数据的东西,使用 -v 来建立外部和内部的关联

    -v 关联内外部数据

    docker run --name nginx8 -p 81:80 -d -v /data/nginx/html:/usr/share/nginx/html nginx

    -v /data/nginx/html  外部目录

    /usr/share/nginx/html  容器内部目录

    数据只要上传到 外部目录,内部目录会时时同步更新

    docker file 的使用

     ===================================================================================

    * springboot 打包成镜像,用 docker 容器化部署方式:

    (1)创建 Dockerfile 文件(该文件名一字不差,不可随意修改),内容为:

    ###指定java8环境镜像
    FROM java:8
    ###复制文件到容器app-springboot
    ADD docker-springboot-0.0.1.jar /app-springboot.jar
    ###声明启动端口号
    EXPOSE 8080
    ###配置容器启动后执行的命令
    ENTRYPOINT ["java","-jar","/app-springboot.jar"]

    (2)在 jar 包同一目录下,放 Dockerfile 文件,然后执行命令:

    docker build -t docker-springboot-0.0.1 .     //注意最后面的 “.” ,不能忘记了,表示当前目录

    该命令就会把 springboot 项目打包成 docker 镜像

    (3)运行该镜像:docker run -p 8080:8080 docker-springboot-0.0.1

    如果不行,可以重启下 dockder:systemctl restart docker

    开启特定端口,或者关闭防火墙:systemctl stop firewalld 

    ==========================================================

    * docker-compose 的使用(需要先安装)

    docker-compose up -d  后台启动所有容器( docker-compose up --build -d      不加 --build ,直接用原来的镜像启动,加了会重新构建新的镜像)

    docker-compose down  撤销下线所有容器

    docker-compose logs -f  全部容器下的日志

    docker-compose logs -f 容器id  某个容器下的日志

    * docker 和 docker-compose 都安装配置好后,在项目里面配置好 Dockerfile 和 docker-compose.yml 文件后,

    在 /home/docker 文件下,上传:

      xxx.jar

      Dockerfile

      docker-compose.yml

    这3个文件,然后直接 :

      docker-compose up --build -d  //启动 docker 自动安装下载运行(每次更换 jar 包重复该操作,如果不带 --build,会使用原有的镜像,更换的 jar 包不起作用)

      docker-compose logs -f   //查看日志

      docker-compose down   //关闭项目(更换 jar 包时使用)

  • 相关阅读:
    hdoj 1305字典树水题之二
    nyoj 547 水池加水 priority_queue优先级队列初体验
    nyoj167 找奶牛病毒 “按位或”运算 递归
    HDOJ4525 吃鸡腿 腾讯马拉松(五)
    hdoj 4523 切蛋糕 腾讯马拉松 大数加法比较
    如何学好3D游戏引擎编程《转自3D游戏引擎网》
    priority_queue 优先级队列的基本应用和重载问题
    poj1611 传染病 并查集
    srand((unsigned)time(NULL))和rand()
    最近被一个windows mobile照相的问题给难住了
  • 原文地址:https://www.cnblogs.com/xuehuashanghe/p/15669644.html
Copyright © 2020-2023  润新知