1.通過dockerfile 製作centos系統映象然後再製作 nginx編譯映象
docker pull centos:centos7.7.1908
vim dockerfile
#centos系統映象from centos:centos7.
7.1908
label maintainer="
yindesheng <[email protected]>
"run
yuminstall -y wget && rm -rf /etc/yum.repos.d/*
&& wget -o /etc/yum.repos.d/centos-base.repo
\ && yum install -y gcc make autoconf gcc-c++ glibc glibc-devel pcre pcre-devel openssl epel-release \
openssl-devel systemd-devel zlib-devel vim lrzsz tree tmux lsof tcpdump wget \
net-tools iotop bc bzip2 zip unzip nfs-utils man-pages \
&& yum clean all \
&& rm -rf /etc/localtime \
&& ln -s ../usr/share/zoneinfo/asia/shanghai /etc/localtime
cmd ["/bin/bash"]
docker build -t centos-base:1.7 .
vim dockerfile
#nginx編譯映象from centos-base:1.7
label maintainer="
yindesheng<[email protected]>
"add nginx-1.16.1.tar.gz /usr/local/src
install
\ && rm -rf /usr/local/src/nginx*\
&& useradd -r nginx
80443
cmd [
""]
docker build -t nginx-centos7:1.16.1 .
2.寫出10個常用的dockerfile 指令碼引數及使用說明
from:指明基礎映象
label:指明映象元資料,如:映象作者
run:執行shell指令
cmd:容器啟動命令
entrypoint:容器啟動後預設執行的命令及引數
expose:暴露埠
copy:複製文字
add:複製和解壓檔案
env:設定環境bianliang
volume:掛載點
user:指定當前使用者
3.請寫出dockerfile的分層原理
容器其實是在映象的最上面加了一層讀寫層,在執行容器裡檔案改動時,會先從映象裡要寫的檔案複製到容器自己的檔案系統中(讀寫層)。
如果容器刪除了,最上面的讀寫層也就刪除了,改動也就丟失了。所以無論多少個容器共享乙個映象,所做的寫操作都是從映象的檔案系統中複製過來操作的,
並不會修改映象的原始檔,這種方式提高磁碟利用率。映象打包也
只打包差異映象。
第10周作業
1 編寫指令碼selinux.sh,實現開啟或禁用selinux功能 2 統計 etc fstab檔案中每個檔案系統型別出現的次數 awk uuid end etc fstab sort nr 3 提取出字串yd c m05mb 9 bdh7dq yvixp3vpw中的所有數字 echo yd c ...
第10周作業
問題描述 東東在玩遊戲 game23 在一開始他有乙個數字n,他的目標是把它轉換成m,在每一步操作中,他可以將n乘以2或乘以3,他可以進行任意次操作。輸出將n轉換成m的操作次數,如果轉換不了輸出 1。思路首先計算出兩者相差的倍數 進行除6運算,cnt 2 然後測試除2或者除3,cnt 1 注意除0導...
第10周作業 二
程式的版權和版本宣告部分 檔名稱 函式 作 者 李超 完成日期 2011 年 10 月 26 日 版 本號 01.10.2 對任務及求解方法的描述部分 輸入描述 函式自變數x 問題描述 求函式的值 當x 0.3時,f x 0 當0.3 x 0.8時,f x x 0.3 0.8 0.3 當x 0.8時...