zoukankan      html  css  js  c++  java
  • Dockerfile

    Dockerfile的语法:
    1. FROM 制定base镜像
    2. MAINTAINER作者。 后面接任意字符串
    3. Copy从本地复制文件到镜像内
    COPY src dest
    COPY[“src”,”dest”]
    4. ADD与COPY一样,但是如果src是压缩包,会被自动解压缩
    5. ENV 设置环境变量
    ENV MY_VERSION 1.3
    RUN yum install httpd-$My_VERSION
    6. EXPOSE 指定容器中的进程监听某个端口号
    7. VOLUME 声明储存(后面详细讲)
    8. WORKDIR 指定工作目录 (所有的命令都变为该目录下执行)
    9. RUN容器中运行某条shell命令
    10. CMD 启动容器后执行的命令,但是可被替换
    11. ENTRYPOINT 启动后运行的命令。

    docker build -t 起名字 . //.代表当前目录下的dockerfile

    vi dockerfile
    FROM centos
    RUN yum -y install net-tools
    RUN yum -y install pcre-devel
    RUN yum -y install zlib-devel
    RUN yum -y install gcc*
    RUN yum -y install make
    RUN useradd nginx
    COPY nginx-1.6.0.tar.gz /
    RUN tar zxf nginx-1.6.0.tar.gz -C /root
    WORKDIR /root/nginx-1.6.0/
    RUN ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx
    RUN make && make install
    CMD ["/bin/bash"]

    docker build -t centos-nginx . //生成镜像
    docker images //查看镜像
    docker run -it centos-nginx //开启容器
    exit
    docker ps -a //查看所有容器
    产看我们刚出来的容器id:42ab0300814a
    docker commit 42ab0300814a newcentos-nginx //生成新的镜像
    docker run -it newcentos-nginx
    在nginx修改监听端口为8081,修改index,html为了区分

    exit
    docker ps -a /查看容器id
    docker start +容器id 启动容器后台运行
    docker exec +容器id /bin/bash 再次进入刚的容器
    启动nginx //因为容器没有开机自启动
    其余三台容器一样操作
    物理机安装nginx
    在nginx主配置文件中http模块添加
    upstream nginx {
    server 172.127.0.2:8081
    server 172.127.0.3:8082
    server 172.127.0.4:8083
    server 172.127.0.5:8084
    server 模块添加
    location=/{
    proxy——pass http://nginx;

    }
    elinks 172.17.0.1 页面不同则成功

  • 相关阅读:
    macOS npm install -g npm失败提示无权限
    js中的展开运算符
    vite启动项目
    export与export default区别
    vue3新特性拾遗
    isRef, isReactive 与 isReadonly的原理
    shallowReactive与reactive的原理浅析
    shallowReadonly 与 readonly原理浅析
    shallowRef与ref的原理浅析
    设计模式-资料相关
  • 原文地址:https://www.cnblogs.com/guarderming/p/9455784.html
Copyright © 2011-2022 走看看