zoukankan      html  css  js  c++  java
  • Dockerfile编写,以及设置一个自启动脚本

    FROM:指定基础镜像,必须为第一个命令

    MAINTAINER: 维护者信息

    RUN:构建镜像时执行的命令

    ADD:将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget

    COPY:功能类似ADD,但是是不会自动解压文件,也不能访问网络资源

    CMD:构建容器后调用,也就是在容器启动时才进行调用。

    ENTRYPOINT:配置容器,使其可执行化。配合CMD可省去"application",只使用参数。

    LABEL:用于为镜像添加元数据

    ENV:设置环境变量

    EXPOSE:指定于外界交互的端口

    WORKDIR:工作目录,类似于cd命令

    Dockerfile

    #base image
    FROM centos
    # MAINTAINER
    MAINTAINER lidd95@chinaunicom.cn
    #RUN 执行以下命令 
    RUN mkdir /home/docker
    #相当于cd
    WORKDIR /home/docker
    
    #ADD  文件放在当前目录下,拷过去会自动解压
    ADD minecraft_server.1.10.2.jar /home/docker
    ADD mc_start.sh  /home/docker
    #RUN 执行以下命令 
    #安装jdk
    RUN yum -y install java-1.8.0-openjdk
    RUN java -Xms120m -Xmx160m -jar /home/docker/minecraft_server.1.10.2.jar nogui
    RUN sed -i 's/eula = false/eula = true/g' ./eula.txt
    RUN chmod 777 /home/docker/mc_start.sh
        && cp -rf /home/docker/mc_start.sh /etc/profile.d
        && cp -rf /home/docker/mc_start.sh /etc/init.d
    WORKDIR /etc/profile.d
    RUN chkconfig --add /etc/profile.d/mc_start.sh
        &&chkconfig /etc/profile.d/mc_start.sh on
    #EXPOSE 映射端口
    EXPOSE 25565

    mc_start.sh

    #!/bin/bash
    # chkconfig: 2345 10 90 
    # description: mc_start ....
    #启动服务器
    echo "服务启动中..."
    sed -i 's/false/true/g' ./eula.txt
    java -Xms120m -Xmx160m -jar /home/docker/minecraft_server.1.10.2.jar nogui
    echo "服务启动成功..."
  • 相关阅读:
    TCP源码—连接建立
    TCP系列02—连接管理—1、三次握手与四次挥手
    TCP系列01—概述及协议头格式
    ubuntu软件管理apt与dpkg
    318. Maximum Product of Word Lengths
    317. Shortest Distance from All Buildings
    316. Remove Duplicate Letters
    315. Count of Smaller Numbers After Self
    314. Binary Tree Vertical Order Traversal
    313. Super Ugly Number
  • 原文地址:https://www.cnblogs.com/lidedong/p/11420055.html
Copyright © 2011-2022 走看看