zoukankan      html  css  js  c++  java
  • docker & k8s 笔记

    docker

    安装部署

    # 会直接将docker安装成服务
    yum -y install docker
    
    # 启动 & 开机自启动
    systemctl start docker
    systemctl enable docker
    
    # 常用命令
    docker images
    docker images -a
    docker ps
    docker ps -a
    docker stop 容器id
    docker start 容器id
    docker rm 容器id
    docker logs 器名/容器id
    

    Dockerfile

    Dockerfile文件详解

    # This my first nginx Dockerfile
    # Version 1.0
    
    # Base images(基础镜像)
    FROM centos
    
    # MAINTAINER(维护者信息)
    MAINTAINER tianfeiyu 
    
    # ENV(设置环境变量)
    ENV PATH /usr/local/nginx/sbin:$PATH
    
    # ADD(文件放在当前目录下,拷过去会自动解压)
    ADD nginx-1.8.0.tar.gz /usr/local/  
    ADD epel-release-latest-7.noarch.rpm /usr/local/  
    
    # RUN(执行以下命令)
    RUN rpm -ivh /usr/local/epel-release-latest-7.noarch.rpm
    RUN yum install -y wget lftp gcc gcc-c++ make openssl-devel pcre-devel pcre && yum clean all
    RUN useradd -s /sbin/nologin -M www
    
    # WORKDIR(相当于cd)
    WORKDIR /usr/local/nginx-1.8.0 
    
    RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-pcre && make && make install
    
    RUN echo "daemon off;" >> /etc/nginx.conf
    
    # EXPOSE(映射端口)
    EXPOSE 80
    
    # CMD(运行以下命令)
    CMD ["nginx"]
    

    修改镜像源为国内

    # 如果地址不可用了自己到阿里云注册一个
    
    /etc/docker/daemon.json
    {
      "registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com"]
    }
    
    systemctl daemon-reload
    systemctl restart docker
    

    创建镜像,创建容器

    # 使用当前目录的Dockerfile;最后的.作用是:Dockerfile中ADD COPY等命令的文件位置
    docker build -t jmeter-agent:test .
    
    # 指定Dockerfile路径
    docker build -f Dockerfile -t jmeter-agent:test .
    
    # -i:交互式操作;-t:终端;/bin/bash:载入容器后运行bash,要不然执行完命令后容器会自己结束
    docker run -it jmeter-agent:test /bin/bash
    
    # -d:后台运行;-p:绑定本地端口号到容器端口;
    docker run -d -p 18090:18090 jmeter-agent:test
    
    # -P:随机绑定本机一个空闲端口到容器端口
    docker run -d -P jmeter-agent:test
    
    # 没试过
    docker run -d -P jmeter-agent:test java /PATH/jar-file
    
    docker stop <容器 ID>
    
    docker restart <容器 ID>
    
    # 请不要使用attach,因为退出会导致容器关闭
    docker attach <容器 ID> 
    
    # 建议用这个
    docker exec -it <容器 ID> /bin/bash
    
    # 导出容器
    docker export <容器 ID> > name.tar
    
    # 导入容器
    docker import name.tar name:tag
    或
    cat name.tar | docker import - name:tag
    
    
    
  • 相关阅读:
    Mac下mysql出现错误:ERROR 1055 (42000)
    单表查询
    外键的变种 三种关系
    Java8中Lambda表达式详解
    Java中的比较器Comparable、Comparator
    Java创建线程的方法
    java日期格式化
    Docker容器如何修改hosts
    使用postman可以正常访问,但是在应用中返回415状态码
    使用tcpdump进行抓包
  • 原文地址:https://www.cnblogs.com/CSunShine/p/12517615.html
Copyright © 2011-2022 走看看