经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » Linux/Shell » 查看文章
DockerFile案例
来源:cnblogs  作者:夏恒  时间:2021/3/1 9:07:25  对本文有异议

DockerFile案例

案例1:自定义镜像mycentos

1、在Centos7宿主机上启用ip转发功能

  1. # Avoid WARNING: IPv4 forwarding is disabled. Networking will not work.
  2. echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
  3. systemctl restart network

2、编写DockerFile文件:vim Dockerfile

  1. # 查询centos镜像版本:https://hub.docker.com/
  2. FROM centos:7
  3. # author<email>
  4. MAINTAINER auth<auth@163.com>
  5. ENV MYPATH /usr/local
  6. WORKDIR $MYPATH
  7. RUN yum -y install vim
  8. RUN yum -y install net-tools
  9. # 暴露端口
  10. EXPOSE 80
  11. CMD echo $MYPATH
  12. CMD /bin/bash

3、构建mycentos镜像(不要忘记最后的.)

  1. docker build -f Dockerfile -t mycentos:1.0 .

4、通过mycentos镜像生成容器,并且更改容器的yum源

  1. # 创建并运行容器
  2. docker run -it --name mycentos01 mycentos:1.0
  3. # yum repo (163)
  4. mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
  5. curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
  6. yum clean all && yum makecache
  7. # ping test
  8. ping www.baidu.com

案例2:带有JDK的Centos7镜像

1、下载JDK到宿主机工作目录(如jdk-8u281-linux-x64.tar.gz)

  • 在linux中安装jdk的教程(若不需要在宿主机上安装jdk,可以跳过)

  • Java官方文档:https://docs.oracle.com/javase/8/docs/technotes/guides/install/install_overview.html

    1. Change directory to the location where you would like the JDK to be installed, then move the .tar.gz archive file to the current directory.

    2. Unpack the archive file and install the JDK. ( tar zxvf jdk-8uversion-linux-x64.tar.gz )

      tar zxvf jdk-8u281-linux-x64.tar.gz

    3. The JDK files are installed in a directory called jdk1.8.0_version in the current directory.

      jdk1.8.0_281

    4. Delete the .tar.gz file if you want to save disk space.

2、编写DockerFile文件:vim Dockerfile1

  1. FROM centos:7
  2. MAINTAINER auth<auth@163.com>
  3. ENV MYPATH /usr/local
  4. WORKDIR $MYPATH
  5. RUN yum -y install vim
  6. RUN yum -y install net-tools
  7. # COPY:将宿主机中指定的文件复制到docker容器中指定的路径 ADD:复制(若是压缩文件会先解压)
  8. ADD jdk-8u281-linux-x64.tar.gz /usr/local
  9. ENV JAVA_HOME /usr/local/jdk1.8.0_281
  10. ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  11. ENV PATH $PATH:$JAVA_HOME/bin
  12. EXPOSE 80
  13. CMD echo $MYPATH
  14. CMD /bin/bash

3、构建 jdk+centos7 镜像(不要忘记最后的.)

  1. docker build -f Dockerfile1 -t mycentos:2.0 .

原文链接:http://www.cnblogs.com/henx/p/14455860.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号