IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 镜像制作(二) -> 正文阅读

[系统运维]镜像制作(二)

1.以centos7作为基础镜像
2.在里面安装好ip,vim,ping命令
3.编译好nginx,使用我们指定的配置文件nginx.conf
4.启动容器的时候,就启动nginx
5.网页代码上传到容器里:
a.直接做到镜像里
b.使用数据卷挂载使用 /usr/local/nginx1/html/

1、准备环境,创建目录

root@xulun:/home/xulun# mkdir mydocker
root@xulun:/home/xulun/mydocker# mkdir mydocker

准备安装nginx的脚本和nginx源码文件

root@xulun:/home/xulun/mydocker/nginx# ls
install_nginx.sh  nginx-1.21.1.tar.gz

下载nginx的源码文件nginx-1.21.1.tar.gz

curl -O  http://nginx.org/download/nginx-1.21.1.tar.gz

install_install.sh:

#!/bin/bash
#解决软件的依赖关系,需要安装的软件包
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc gcc-c++ autoconf automake make
#download nginx
mkdir -p /nginx
cd /nginx
#解压 下载的nginx的源码包
tar xf nginx-1.21.1.tar.gz
cd  nginx-1.21.1
#生成编译前配置工作-->Makefile
./configure --prefix=/usr/local/nginx1  --with-threads --with-http_ssl_module  --with-http_realip_module  --with-http_v2_module --with-file-aio  --with-http_stub_status_module --with-stream
#编译
make
#编译安装--》将编译好的二进制程序安装指定目录/usr/local/nginx1
make   install

2.编写Dockerfile

root@xulun:/home/xulun/mydocker/nginx# vim Dockerfile

Dockerfile:

FROM centos:7
ENV NGINX_VERSION 1.21.1
ENV AUTHOR xulun
LABEL maintainer="xulun<2250899551@qq.com>"
RUN mkdir /nginx
WORKDIR /nginx
COPY . /nginx
RUN set -ex; \
    bash  install_nginx.sh ; \
    yum install vim iputils  net-tools iproute -y
EXPOSE 80
ENV PATH=/usr/local/nginx1/sbin:$PATH

STOPSIGNAL SIGQUIT
CMD ["nginx","-g","daemon off;"]

3.生成我们的nginx的镜像

root@xulun:/home/xulun/mydocker/nginx# docker build -t my-nginx:1.0 .

查看镜像:

root@xulun:/home/xulun/mydocker/nginx# docker images
REPOSITORY    TAG       IMAGE ID       CREATED          SIZE
my-nginx      1.0       59af288034d8   24 seconds ago   543MB

4.启动容器,使用我们的自己编译的镜像

docker run -dp 3390:80 --name 1-nginx-1 my-nginx:1.0

5.去测试访问web服务

curl  192.168.0.17:3390

容器使用宿主机里的网站数据
1、使用volume方式来解决

docker run -dp 3391:80 -v /web:/usr/local/nginx1/html  --name 1-nginx-2  my-nginx:1.0

2、创建volume

 docker volume create 2-nginx

拷贝/web下的网页的内容到数据卷volume对应的目录下(可以使用inspect来查看详细信息)
接一个 -r 无论是文件还是文件夹都拷贝

 cp /web/* /var/lib/docker/volumes/2-nginx/_data/ -r

启动容器使用卷

docker run -dp 3392:80 --name 1-nginx-3 --mount source=2-nginx,target=/usr/local/nginx1/html my-nginx:1.0

将网站的数据做到镜像里
1、在Dockerfile里面加一条拷贝语句

COPY  web/*  /usr/local/nginx1/html/         
    ---》拷贝网站代码到镜像里nginx的网页根目录

2、生成镜像2.0
3、启动容器,使用新的镜像

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-08-19 12:28:08  更:2021-08-19 12:30:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 9:25:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码