Docker 镜像基础(三)
基于Dockerfile制作yum版本nginx镜像
[root@node-2 ~]# mkdir /opt/nginx
[root@node-2 ~]# cd /opt/nginx/
## 创建Dockerfile文件(Dockerfile 开头字母必须大写):
vim Dockerfile
#
# docker web images
FROM centos:latest
RUN yum install epel-release -y
RUN yum install nginx -y
EXPOSE 80 443 8080
CMD ["/usr/sbin/nginx","-g","daemon off;"] ## 没有添加环境变量进去 只能写全路径
## 生成Dockerfile镜像:
docker build -t nginx:v1 . ## 最后有个点 很重要
## 查看生成的docker images:
[root@node-2 nginx]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx v1 ad4850303e64 3 minutes ago 333MB
centos latest 831691599b88 3 weeks ago 215MB
## 从生成的镜像运行一个容器:
docker run -ti --rm -p 80:80 nginx:v1
## 访问 这个容器的IP :
http://ip/
创建nginx 自定义界面:
## 确认镜像里面的nginx 代码目录在哪里:
docker run -ti --rm -p 80:80 nginx:v1 bash
vim /etc/nginx/nginx.conf
## 修改Dockerfile 文件:
vim Dockerfile
#
# docker web images
FROM centos:latest
RUN yum install epel-release -y
RUN yum install nginx -y && rm -rf /usr/share/nginx/html/*
ADD code.tar.gz /usr/share/nginx/html/
EXPOSE 80 443 8080
CMD ["/usr/sbin/nginx","-g","daemon off;"] ## 没有添加环境变量进去 只能写全路径
## 构建镜像:
docker build -t nginx:v2 .
## 生成容器:
docker run -ti --rm -p 80:80 nginx:v2 bash
## 访问:
curl http://IP
......查看内容即可
docker build scripts:
#!/bin/bash
TAG=$1
docker build -t nginx:$TAG .
### 上传harbor:
#docker push ........
### 运行脚本:
1 ) sh docker_build.sh 20200715
2 ) docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx 20200715 dd0aea4c4b95 3 days ago 333MB
Docker 镜像基础(三)的更多相关文章
- Dockerfile 自动制作 Docker 镜像(三)—— 镜像的分层与 Dockerfile 的优化
Dockerfile 自动制作 Docker 镜像(三)-- 镜像的分层与 Dockerfile 的优化 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云 ...
- 2 Docker 镜像基础
Docker 镜像可以从docker.io 下载,也可以自己通过Dockerfile来构建镜像,我有时从国外下载镜像时,网速不行,我就改成国内的镜像,修改如下: # vim /etc/docker/d ...
- docker+k8s基础篇一
Docker+K8s基础篇(一) docker的介绍 A:为什么是docker B:k8s介绍 docker的使用 A:docker的安装 B:docker的常用命令 C:docker容器的启动和操作 ...
- Docker 学习3 Docker镜像管理基础
一.docker 常用操作及原理 1.docker 常用操作 2.docker 机制 1.docker client端是通过http或者https与server端通信的.个 2.docker 镜像可以 ...
- Docker镜像管理基础与基于容器的镜像制作示例
一.Docker镜像 Docker镜像是启动Docker容器的一个非常重要的组件.Docker各组件之间的关系如图: Docker镜像含有启动容器所需要的文件系统及其内容,因此Docker镜像用于创建 ...
- Docker镜像管理基础篇
Docker镜像管理基础篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Docker Images Docker镜像还有启动容器所需要的文件系统及其内容,因此,其用于创建并启 ...
- docker+k8s基础篇三
Docker+K8s基础篇(三) kubernetes上的资源 A:k8s上的常用资源 Pod的配置清单 A:Pod上的清单定义 B:Pod创建资源的方法 C:spec下其它字段的介绍 Pod的生命周 ...
- 3.docker镜像管理基础
一.docker镜像相关 1.About Docker Image Docker镜像含有启动容器所需要的文件系统及其内容,因此,其用于创建并启动docker容器. 采用分层构建机制,最底层为bootf ...
- 三个技巧帮助Docker镜像瘦身
在构建Docker容器时,应该尽量想办法获得体积更小的镜像,因为传输和部署体积较小的镜像速度更快. 但RUN语句总是会创建一个新层,而且在生成镜像之前还需要使用很多中间文件,在这种情况下,该如何获得体 ...
随机推荐
- elastic-job分布式调度与zookeeper的简单应用
一.对分布式调度的理解 调度->定时任务,分布式调度->在分布式集群环境下定时任务这件事 Elastic-job(当当⽹开源的分布式调度框架) 1 定时任务的场景 定时任务形式:每隔⼀定时 ...
- 从零开始学生信-orthofinder的安装和使用-基因家族分析
[环境变量]注释掉conda3,source ~/.bashrc conda install orthofinder # 若在上一章之后没有重启的同学请重启后操作. # 由于是刚开始搭建,这里没有给o ...
- thinkphp thinkphp6 安装JWT
第一步:composer安装 composer require firebase/php-jwt 下图是执行成功 cd 进入项目目录的vendor 找到firebase 看到下面有一个php-jw ...
- react第一单元(简介)
第一单元(react简介) 课程目标 理解react这个框架在前端开发中的地位 理解react诞生的原因和意义(react是一个用于快速构建前端视图的javaScript库) 理解什么是虚拟dom.原 ...
- python爬虫爬取安居客并进行简单数据分析
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 爬取过程一.指定爬取数据二.设置请求头防止反爬三.分析页面并且与网页源码进行比对四.分析页面整理数据 ...
- iOS常见遍历方法汇总
一.for循环 NSArray *iosArray = @[@"L", @"O", @"V", @"E", @" ...
- jQuery中live()使用报错,TypeError: $(...).live is not a function
原博文 https://blog.csdn.net/sdfdyubo/article/details/59536781 使用 原写法 /*为选项卡绑定右键*/ $(".tabs li&quo ...
- [从源码学设计]蚂蚁金服SOFARegistry之Data节点变更
[从源码学设计]蚂蚁金服SOFARegistry之Data节点变更 目录 [从源码学设计]蚂蚁金服SOFARegistry之Data节点变更 0x00 摘要 0x02 引子 0x03 业务范畴 3.1 ...
- Windows权限维持
前言 最近终于不是那么忙了,有时间静下心来学点知识,这篇文章自起稿到发布,用时近三周,其中有近一周的时间在迷茫在焦躁,甚至怀疑.否定自己.网上的表哥们个顶个儿的优秀,于是就给自己很大的压力,所以那一个 ...
- 【linux】系统编程-2-消息队列
目录 前言 4. 消息队列 4.1 概念 4.2 对比 4.3 函数及使用流程 4.3.1 msgget() 4.3.2 msgsng() 4.3.3 msgrcv() 4.3.4 msgctl() ...