Ps:xshell同時向幾個會話發送命令html
xshell:
查看-撰寫-撰寫欄node
:q! 強制退出 :wq! 強制寫入退出 :set nu 顯示行號 :數字 調到數字那行
/xxx 在文件裏面搜索xxx 隨時按下esc能夠退出底線命令模式
H 移動光標到屏幕首行
M 移動到光標到屏幕的中間一行
L 移動光標到屏幕的尾行
gg 移動光標到文檔的首行
G 移動光標到文檔尾行
yy 拷貝光標所在行
dd 刪除光標所在行
D 刪除當前光標到行尾的內容
dG 刪除當前行到文檔尾部的內容
p 粘貼yy所複製的內容
x 刪除光標所在的字符
u 撤銷上一步的操做
:! command 暫時離開vim指令模式,執行command的結果
例如 :!ip a 臨時看一下ip信息,而後能夠回到vimpython
:set nu 顯示vim行號
:set nonu 取消行號
mysql
1.服務器有哪些硬件? 答:中央處理器(CPU)、內存、芯片組、I/O總線、I/O設備、電源、機箱,主板,硬盤,等等. 2.內存,CPU,硬盤的做用? 答: 內存:用於暫時存放CPU中的運算數據,以及與硬盤等外部存儲器交換的數據; CPU:解釋計算機指令以及處理計算機軟件中的數據; 硬盤:電腦主要的存儲媒介,用來存放平常工做的一些數據,文件等等. 3.服務器常見品牌? 答:戴爾,惠普,聯想,IBM,浪潮, 4.操做系統的做用? 答:是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在「裸機」上的最基本的系統軟件,任何其餘軟件都必須在操做系統的支持下才能運行。 5.開源軟件的特性,以及開源許可的協議 答: 特性:低風險,高品質,低成本,透明度高, 協議:複製自由,傳播自由,收費傳播,修改自由. 6.linux優勢 答:免費,無毒,開源,性能穩定,高效+靈活, 7.說出常見的linux發行版 答:Redhat,Debian,Ubuntu,Gentoo,centos,fedora,suse 8.用虛擬機學linux的好處是? 答: 虛擬機來模擬環境是最接近工做環境的; 虛擬機能夠輕鬆知足多機器的需求; 虛擬機搭建Linux環境,而且用做我的開發學習使用,節省開支; 虛擬機修改配置容易,不會影響真機; 9.請寫出文件夾的增刪改查命令 答: 增:mkdir 文件夾名稱 刪:rmdir 文件夾名稱 改:mvdir 原文件夾名稱 現文件夾名稱 查:ls 10.請寫出查看ip地址的命令 答:ip addr或者ifconfig 11.請寫出關閉防火牆的命令 答:systemctl disable firewalld
https://www.cnblogs.com/pyyu/articles/9314206.htmllinux
https://www.cnblogs.com/pyyu/p/9277153.htmlnginx
https://www.cnblogs.com/pyyu/articles/9313587.htmlweb
https://www.cnblogs.com/pyyu/articles/9336967.htmlredis
操做系統是什麼 是人與計算機硬件溝通的介質 2.操做系統組成---雞蛋由幾部分組成 1)蛋黃-系統內核 2)蛋清-命令解釋器shell 3)蛋殼-應用程序 3.Linux是一套開放源代碼程序、且能夠自由傳播的操做系統 4.掌握centos/redhat能更好的適應互聯網服務端開發環境 5.使用linux的好處是自由傳播,免費,不會犯法,任意切換圖形/命令終端,安全穩定,不用殺毒軟件,不卡
由上圖看出操做系統跑於硬件之上,應用程序運行在操做系統之上,因爲Linux只是一套操做系統並不含有其餘應用程序,所以工程師須要在下載Linux系統而且安裝以後,就可使用了。sql
Shell(也叫作終端或殼)充當的是人與內核(硬件)之間的翻譯官,用戶吧一些命令「傳遞」給終端,它就會調用相應的程序服務去完成工做。紅帽Linux默認使用的終端是Bash解釋器。mongodb
開源軟件的特色;
低風險 使用閉源軟件無疑把命運交付給他人,一旦封閉的源代碼沒有人來維護,你 將進退維谷;並且相較於商業軟件公司,開源社區不多存在倒閉的問題。
高品質 相較於閉源軟件產品,開源項目一般是由開源社區來研發及維護的,參與編 寫、維護、測試的用戶量衆多,通常的 bug 尚未等爆發就已經被修補。
低成本 開源工做者都是在幕後默默且無償地付出勞動成果,爲美好的世界貢獻一份 力量,所以使用開源社區推進的軟件項目能夠節省大量的人力、物力和財力。
更透明 沒有哪一個笨蛋會把木馬、後門等放到開放的源代碼中,這樣無疑是把本身的罪行暴露在陽光之下。
GNU:
GNU GPL (GNU General Public License GNU):
只要軟件中包含了遵循 GPL 協議的產品或代碼,該軟件就必須也遵循 GPL 許可協議且開源、免費, 所以這個協議並不適合商用軟件。
遵循了此協議的就包括Linux和大多數開源軟件
GNU的特色是:
複製自由
傳播自由
收費傳播 開源軟件都是經過對用戶提供有償服務形式來盈利
修改自由 開發人員容許增長和刪除軟件的功能,可是還必須遵循GPL許可協議
發行版本;
在介紹常見的 Linux 系統版本以前,首先須要區分 Linux 系統內核與 Linux 發行版的不一樣。
Linux 系統內核指的是一個由 Linus Torvalds 負責維護,提供硬件抽象層、硬盤及文件 系統控制及多任務功能的系統核心程序。
Linux 發行版系統是咱們常說的 Linux 操做系統,也便是由 Linux 內核與各類經常使用 軟件的集合產品。
全球大約有數百款的 Linux 系統版本,每一個系統版本都有本身的特性和目標人羣,下面 將能夠從用戶的角度選出最熱門的幾款進行介紹。
安裝的選擇性:
pc能夠選擇 -純系統 Linux/windows -雙系統 Windows+Linux -虛擬化技術 Windows+vmware workstation 服務器 -物理機純系統 -物理機+vmware(vmware esxi) -物理機+docker 安裝 -簡易安裝 -自定義安裝 -快照
下載centosISO鏡像:
要安裝centos系統,就必須得有centos系統軟件安裝程序,能夠經過瀏覽器訪問centos官網http://www.centos.org,而後找到Downloads - > mirrors連接,點擊後進入下載,可是因爲這是國外的網址,下載速度確定受限。
所以可使用國內的鏡像源
https://opsx.alibaba.com/mirror#阿里雲官方鏡像站 iso下載地址(此DVD映像包含可使用該軟件安裝的全部軟件包安裝程序。這是大多數用戶的推薦圖像。):https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso
32位與64位區別之一,
32位系統--->4GB內存只能用3.5Gb
64位系統 支持更大內存
遠程連接linux
Xshell
SecureCRT
Linux查看ip方式:
方式1:ip addr 方式2: ifconfig
電腦宿主機的ip在局域網內是惟一的,選擇了NAT模式建立虛擬機,虛擬機就是一個新的局域網
用此模式,就是局域網中一臺獨立的主機,它能夠訪問該類網段任意一臺機器,佔用IP,
單機模式
軟件壓縮包以及解壓包放在/root目錄下,
安裝在/opt目錄下,
筆記
賬號密碼:root dlh123 今日內容: 筆記本的組成: 顯示屏 鍵盤 usb 觸摸板 電源 hdmi 視頻輸出口 vga 網口 typec 耳機孔 散熱口 音箱 攝像頭 臺式機組成: cpu 內存條 網卡 顯卡 主板 硬盤 電源 風扇 主板鈕釦電池 一堆插口 光驅 服務器: 性能很是強悍的計算機 運維職責: 保證公司網站7*24小時的運行 背鍋俠 linux兩大主流: redhat 紅帽子linux 企業版收費的操做系統 rhcsa < rhce < rhca 三個級別 centos 紅帽子系統的衍生社區版 linux學習安裝方式: 1: 服務器+linux 2. 服務器 + windows+linux 3. 服務器+ vmware軟件+linux ***** 我的學習版:vmware workstation 企業版:vmware esxi 服務器版本 能夠虛擬化出多個linux操做系統 ctel + alt 切換linux和windows的鼠標 若是出現虛擬機linux沒法啓動報錯的狀況,有關VT的信息: 解決方法:進入筆記本的主板BIOS界面,找到配置頁面,找到intel VT參數,而後選擇enable,開啓虛擬化功能 登陸服務器的方式: 1. 進入機房,找到服務器,登陸linux 2. 遠程登陸服務器 經過遠程登陸軟件xshell,登陸linux 裝好機器後,初始化的步驟: 1.關閉防火牆,保證服務正確使用,正確安裝,以避免麻煩 iptables -L #查看防火牆的規則 iptables -F #清空防火牆規則 systemctl stop firewalld # 關閉防火牆服務/軟件 臨時關閉,開機自啓動 systemctl disable firewalld #永久關閉防火牆,關閉開機自啓 2.關閉系統自帶selinux (自帶的防火牆) getenforce #查看selinux狀態 enforcing setenforce 0 #臨時關閉selinux,不須要重啓即生效 #永久關閉selinux ,這裏須要操做配置文件,須要重啓永久生效 sed -i 's/enforcing/disabled/' /etc/selinux/config 3.配置網絡,用於遠程鏈接 局域網ip,通常形式是: 0~255 192.168.19.xx 10.0.0.xx 172.0.0.xx linux:查看ip的方式,輸入命令,如下兩個命令均可以管理ip ip addr ifconfig 第一次鏈接linux: 輸入命令 ssh root@ip #遠程登陸服務器,帳戶是root 開始配置linux的網絡(NAT) 1.若是選擇橋接模式,而且使用dhcp(動態獲取ip服務) 會在每次開機的時候,動態獲取一個ip(ip所以是不固定的),所以能夠直接用靜態ip(寫死在配置文件的ip)嗎? 會出現ip衝突的問題.. 192.168.19.213 192.168.19.213 怎麼解決呢? 2.選擇使用nat模式,配置專屬本身的ip,固定的ip 配置以下 1.配置vmware workstation軟件 博客地址:https://www.cnblogs.com/pyyu/p/9739956.html 找到 編輯 > 虛擬網絡編輯器 而後跟着博客上的圖片所示,配置nat網絡 2.修改配置文件 打開配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens33 主要修改以下行 BOOTPROTO=static ONBOOT=yes IPADDR=10.0.0.10 NETMASK=255.255.255.0 GATEWAY=10.0.0.254 DNS1=119.29.29.29 3.修改了配置文件,重啓網絡服務 /etc/init.d/network restart 4.ping baidu.com #檢測網絡是否通訊 5.遠程鏈接服務器 1.經過xshell鏈接,其實也是封裝了 ssh root@10.0.0.10 命令 2. 執行命令 ssh root@10.0.0.10 linux命令練習: ls 查看目錄文件 ls -la 查看全部目錄,以及隱藏文件 文件夾操做 mkdir s13 建立s13文件夾 cd s13 進入s13文件夾 mv s13 s13_hehe 修改s13文件名爲s13_hehe mkdir test 建立test空文件夾 rmdir test 刪除test空文件夾 執行第一個python命令 touch first.py 建立python腳本文件 vi first.py 打開first.py腳本 按下字母i 進入編輯模式,寫入以下代碼 print('Hello,linux') 按下字母esc,退出編輯模式,輸入 :wq 命令,保存退出vi模式 linux內置python解釋器 python first.py 執行python腳本
/
https://www.cnblogs.com/pyyu/p/9485268.html docker三大概念 容器三大基本概念 鏡像 image class 容器 container class() 倉庫 repository (存放鏡像文件的地方) 我能夠去公網去,下載鏡像 docker整個生命週期就是這三個概念。 #centos安裝docker 1.編譯安裝,源碼安裝 2.yum安裝 #若是網速太慢,你能夠選擇阿里雲的源,缺點就是版本低 #你能夠選擇用aliyun的yum源,docker就存在epel源中 #若是網速夠快,或者在公司中,必定要裝官方源 #配置docker的官方源,必定是官方的最好啊 #因爲配置不了官方的docker倉庫,我們選擇阿里雲 1.yum install docker* docker-* -y #安裝docker服務端 2.啓動docker systemctl start docker systemctl status docker 3.查看docker是否正確啓動 docker version 4.簡單使用docker docker search hello-world docker pull hello-world docker image ls #查看鏡像 #等於 docker images #查看鏡像 docker run 鏡像名/鏡像id(能夠寫前三位) #運行一個docker容器實例 docker ps #查看docker進程 docker ps -a #查看全部運行過的docker容器記錄 3.rpm安裝 docker三大概念: 容器(如同經過class類的實例化對象),也就是能夠經過一個鏡像,建立多個容器實例 鏡像(如同class類) 倉庫 docker經常使用命令: 增 增長容器記錄,啓動容器 docker run 鏡像id/鏡像名 #運行建立一個容器container實例 docker run -it centos #此命令會 進入到容器空間內,進入到容器的centos中 -i 交互式界面 -t 是開啓一個終端 docker run -it --rm ubuntu #運行一個烏班圖容器,而且在退出是,刪除容器運行記錄 docker run centos #直接運行這個centos鏡像,會生成一個容器記錄 #此時就會生成一個容器記錄,可是容器中並無任何的後臺程序,所以直接就掛掉 # 你會發現,容器死活不生成,docker ps 看不到記錄, docker run -d centos /bin/sh -c "while true;do echo hello s14 docker~~~~; sleep 1;done" #必定會生成一個容器記錄 #docker ps 能不能看到記錄? -d 參數是 後臺運行 /bin/sh 調用shell解釋器 -c 指明一段shell語法 docker pull centos #下載docker的鏡像 刪 docker rm 容器id #docker rm刪除的是已經中止的容器id docker rmi 鏡像id #刪除一個鏡像記錄 docker rm `docker ps -aq` # 一次性刪除全部容器id記錄 ` ` #反引號是取命令的運行結果 docker rmi `docker images -aq` #一次性刪除全部鏡像記錄 改 docker commit #提供容器記錄,爲新的鏡像 docker stop 容器id #中止正在運行的容器 docker start 容器id #啓動一個關閉中的容器 #導出鏡像 docker save centos > /opt/centos.tar.gz #導出docker鏡像至本地 #導入鏡像 docker load < /opt/centos.tar.gz #經過--name參數給容器記錄,加上別名 docker run --name s14hehe -d centos /bin/sh -c "while true;do echo hello s14 docker~~~~; sleep 1;done" #進入正在運行的容器 docker exec -it c49 /bin/bash -it 交互式的操做終端 /bin/bash使用shell解釋器,只有在redhat,centos系統中,才能用/bin/bash #提交自定義的鏡像文件(本身修改了容器記錄,提交成一個新的鏡像,能夠發給別人使用) #需求是? 1.默認的centos鏡像,沒有vim 2.咱們本身run一個容器記錄,安裝vim,而後提交成新的鏡像文件 docker commit 24c1ef3f8da8 s14/centos-vim 3.查看新的鏡像記錄 docker images s14/centos-vim latest 01b0298ec5b0 7 seconds ago 327 MB 4.能夠經過新的帶有vim的鏡像運行容器記錄,經過此方法能夠解決環境難配置的問題 docker run -it s14/centos-vim /bin/bash 查 docker image ls #查看鏡像記錄 docker images #查看鏡像記錄 docker ps #查看容器記錄 ,只能查看到正在運行中的容器 #正在運行中的容器,表明,容器後臺必定有個進程在運行 docker ps -a #查看中止的和在運行的容器記錄 docker container ls -a #等同於docker ps -a docker logs -f 容器id #查看正在運行中的 容器內日誌 -f 不間斷打印 #其餘 #容器內應用,外部也是能夠訪問的 #經過-P參數進行端口映射 #運行一個web容器實例 1.下載鏡像 docker pull training/webapp 2.運行鏡像,產生容器記錄 docker run -d -P 6fa python app.py -d 後臺運行 -P 將容器內的5000端口隨機映射到宿主機的一個端口 docker port 容器id [root@node1 /opt/redis-4.0.10/src 16:00:41]#docker port ebb7 5000/tcp -> 0.0.0.0:32768 #docker鏡像加速器 #執行命令 curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io #其實就是更改了,docker的一個倉庫源 [root@node1 /opt/redis-4.0.10/src 14:48:26]#cat /etc/docker/daemon.json { "registry-mirrors": [ "http://95822026.m.daocloud.io" ], "insecure-registries": [] }
/
1.docker介紹 docker是linux容器方案 docker能夠很大的解決環境依賴問題 virtualenv是什麼? python解釋器的虛擬環境,和操做系統無關 在機器上能夠配置多個python解釋器 docker環境依賴解決問題: 1.在物理操做系統上的一個環境隔離(虛擬環境) docker使用命令回顧: 鏡像 docker image ls docker images docker pull 鏡像名 #docker倉庫,dockerhub docker push 鏡像名 #把本地的鏡像推送到 dockerhub倉庫 docker search 鏡像名 docker rmi 刪除鏡像 docker version #查看docker版本,查看到server 和client兩個端 systemctl start docker #啓動docker docker save 鏡像名 > /data/centos.tar.gz #導出鏡像 docker load < /data/centos.tar.gz #導入鏡像 docker run 鏡像名 #運行鏡像文件,產生一個容器實例 容器 docker start 容器id docker stop 容器id docker exec -it 容器id #進入正在運行的容器 -i 交互式操做 -t 開啓一個終端 docker run 鏡像名 #建立容器實例 docker rm 容器id #刪除容器記錄,必須提早docker stop 容器id ,只能殺死已經中止的容器 docker ps #查看容器正在運行記錄 docker ps -aq #顯示全部容器記錄的id號 -a 顯示全部容器記錄 -q 顯示容器id docker rm `docker ps -aq` #一次性刪除全部容器記錄 docker container ls #查看容器正在運行記錄 docker commit 容器id記錄 #提交這個容器,建立一個新的鏡像 docker logs #查看容器運行日誌 -f #不間斷打印容器日誌 docker port #查看容器的端口映射關係(外部訪問到容器內的端口) docker run -d centos -P -d 後臺運行 -P 隨機映射端口 -p 9000(宿主機):5000(容器內) --name 給建立的容器記錄,添加別名 倉庫 1.docker pull 2.docker run #若是沒有這個鏡像,直接docker run 它也會內部去下載這個鏡像 #腳本的概念就是,將你想作的事,寫入到一個文件中,而後執行這個文件,就是執行一個腳本 #假如我想定製一個本身的 docker鏡像 #首先得有一個基礎操做系統鏡像 #FROM centos #基於這個centos的鏡像,而後定製我本身的鏡像 #底下經過docker提供的指令,添加,自定製本身的規則,而後建立本身的鏡像文件 #FROM centos #基於這個centos的鏡像,而後定製我本身的鏡像 #RUN yum install vim -y #RUN yum install nginx -y #僅僅只有這3句的dockerfile,就能定製一個擁有nginx和vim的centos鏡像文件 #此時我構建出的這個centos-vim-nginx鏡像文件,就能夠傳給14期的全部同窗用 #我們14期的同窗,就能夠 docker load 或者docker pull 這個鏡像,docker run centos-vim-nginx FROM scratch #製做base image 基礎鏡像,儘可能使用官方的image做爲base image FROM centos #使用base image FROM ubuntu:14.04 #帶有tag的base image #至關於代碼註釋,告訴別人,你的鏡像文件的信息是什麼 LABEL version=「1.0」 #容器元信息,幫助信息,Metadata,相似於代碼註釋 #定義一個dockerfile的做者信息 LABEL maintainer="wupeiqidsb" #開始定製本身的鏡像需求 #對於複雜的RUN命令,避免無用的分層,多條命令用反斜線換行,合成一條命令! RUN yum update && yum install -y vim \ Python-dev #反斜線換行 #RUN指令,至關於在centos中執行了一堆命令 RUN hostnamectl set-hostname mydocker RUN yum install redis -y #寫上3條就會執行者3條 WORKDIR /root #至關於linux的cd命令,改變目錄,儘可能使用絕對路徑!!!不要用RUN cd WORKDIR /test #若是沒有就自動建立 WORKDIR demo #再進入demo文件夾 WORKDIR s14 WORKDIR /opt RUN pwd /opt #ADD和COPY #宿主機linux有本身的磁盤,文件夾 #容器空間 也有本身的文件夾 #咱們使用docker必定是想將宿主機的文件,添加到容器中 #ADD就是添加宿主機的文件,到容器當中 #ADD還有一個解壓縮的功能 # /opt ADD and COPY #把宿主機的hello文件,放入到容器的 / 根目錄下 # 這個hello文件的相對路徑,是以Dockerfile文件所在目錄爲相對路徑 ADD hello / #把本地文件添加到鏡像中,吧本地的hello可執行文件拷貝到鏡像的/目錄 #把與dockerfile同級的一個test.tar.gz壓縮文件,拷貝添加到容器的 根 / 目錄中,而且解壓縮 # 遠程傳輸 而且 tar -zxvf ADD test.tar.gz / #添加到根目錄並解壓 WORKDIR /root #切換工做目錄到 /root #把dockerfile同級的那個hello文件 拷貝到容器的/root/test/hello ADD hello test/ #進入/root/ 添加hello可執行命令到test目錄下,也就是/root/test/hello 一個絕對路徑 COPY hello test/ #等同於上述ADD效果 ADD與COPY -ADD除了COPY功能還有解壓功能 添加遠程文件/目錄使用curl或wget ENV #環境變量,儘量使用ENV增長可維護性 ENV MYSQL_VERSION 5.6 #設置一個mysql常量 RUN yum install -y mysql-server=「${MYSQL_VERSION}」 RUN ./cofigure --prefix=/opt/ RUN make&& make install #dockerfile實驗 1.準備一個flask代碼,準備python代碼 from flask import Flask app=Flask(__name__) @app.route('/') def hello(): return "hello docker,i am sbwueiqi, i am in s14 " if __name__=="__main__": app.run(host='0.0.0.0',port=8080) 2.準備Dockerfile,準備好全部須要的文件 [root@node1 /data/mydocker 10:33:53]#ls CentOS-Base.repo Dockerfile epel.repo myflask.p cat Dockerfile FROM centos LABEL maintainer="Chao Yu<yc_uuu@163.com>" ADD CentOS-Base.repo /etc/yum.repos.d/ ADD epel.repo /etc/yum.repos.d/ RUN yum clean all RUN yum install python-pip -y RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple flask COPY myflask.py /app/ WORKDIR /app EXPOSE 8080 CMD ["python","myflask.py"] 1.引入一個centos鏡像,爲基礎鏡像 2.做者註釋信息 3.添加本地的兩個yum文件,到容器的/etc/yum.repos.d/底下 4.清空yum緩存 5.yum安裝pip工具 6.pip安裝flask模塊,指定清華源 7.拷貝本地的flask代碼,到容器的/app/目錄下 8.切換工做目錄,到/app底下 9.暴露容器的8080端口,而後在運行鏡像時候,加上-p參數,指定端口映射 10.執行命令,運行flask 3.構建docker鏡像文件 docker build -t yuchao163/s14-flask-docker . #構建當前目錄的Dcokerfile,而後構建出一個名爲yuchao163/s14-flask-docker 這個的鏡像文件 -t tag參數,給鏡像加上標記名 dockerhub帳戶名:yuchao163 dockerhub帳戶名/鏡像名 #是爲了後面講docker鏡像,推送到dockerhub 4.查看鏡像是否構建完成 docker images 5.運行這個鏡像文件,產生容器實例 docker run -p 9000:8080 -d 43d -p 映射9000端口到容器的8080 -d 後臺運行 43d 鏡像id 6.查看已經運行的docker實例 docker ps 7.學習dockerhub,發佈本身的docker鏡像 1.我能夠先下載其餘人的docker鏡像 docker pull yuchao163/hello-world-docker 2.上傳本身的docker鏡像 docker login #登陸本身的docker hub帳號 ,輸入密碼 #docker就會有你本身的dockerhub帳號信息 yuchao163 3.更改docker鏡像的名字,也就是加上一個tag標記 docker tag s14/centos-vim yuchao163/s14-centos-vim docker tag 現有鏡像名字 dockerhub帳戶名/新的鏡像名 4.登陸後能夠推送鏡像文件,此時推送給的是本身的yuchao163帳號倉庫下 docker push yuchao163/s14-hello-docker 5.登陸https://hub.docker.com/查看本身推送的公網鏡像 8.構建公司私有docker倉庫,其實就是搭建一個api服務器,經過api能夠下載鏡像 1.下載docker官方提供的私有倉庫鏡像 docker pull registry 2.查看鏡像 docker images 3.啓動一個私有倉庫容器 docker run -d \ -p 5000:5000 \ -v /opt/data/registry:/var/lib/registry \ registry 4.此時能夠檢查容器進程 docker ps 5.此時私有倉庫就打開了5000端口,經過端口映射,訪問宿主機的5000端口,查看是否通訊 yum install telnet -y telnet 127.0.0.1 5000 #檢測5000端口是否通訊 6.修改本地鏡像的tag標籤,標註我要往哪push鏡像 docker tag docker.io/hello-world 192.168.12.96:5000/s14-hello 7.修改docker配置,容許非安全的傳輸方式 1.vim /etc/docker/daemon.json,寫入信息,私有倉庫地址,都得改爲本身的 {"registry-mirrors": ["http://95822026.m.daocloud.io"], "insecure-registries":["192.168.12.96:5000"] } 2.修改docker.server vim /lib/systemd/system/docker.service #寫入以下信息,請在[service]中寫入 [Service] EnvironmentFile=/etc/docker/daemon.json 8.重啓docker服務,使得生效 systemctl daemon-reload #從新加載docker配置文件 systemctl restart docker #重啓docker服務 9. #重啓docker服務,會中止容器,所以要再次啓動 docker ps -a docker start b23bcfe42e80 #啓動這個私有倉庫容器 10.推送本地鏡像到 私有倉庫 192.168.12.96:5000 docker push 192.168.12.96:5000/s14-hello 11.此時訪問api接口,查看私有倉庫的數據 http://192.168.12.96:5000/v2/_catalog docker的數據集掛載功能 -v 參數 掛載宿主機的文件:容器內的文件夾 -v /opt/data:/opt/s14/ docker run -p 8000:8080 -v /opt/s14:/opt/data/ -d 43d 啓動容器,經過-v參數掛載 掛載容器內的/opt/data/文件夾,其實訪問的是宿主機的/opt/s14/ -p 7000:5000 redhat enterprice linux 1.熟悉linux環境Python OOP編程,擅長RHEL/centos7操做系統 2.熟悉linux經常使用命令 3.熟練使用virtualenvwrapper管理python多個解釋器環境 4.熟練mysql關係型數據庫,CURD,mysql主從複製 5.熟練NoSQL非關係型數據庫redis,mongodb 6.熟練redis主從配置,數據持久化RDB、AOF、redis哨兵維護redis主從高可用,瞭解redis-cluster 7.擅長nginx上線python項目,使用uwsgi+nginx+supervisor管理python項目 8.熟練nginx反向代理,負載均衡配置 9.熟悉docker安裝配置,經常使用docker命令,編寫dockerfile構建鏡像,構建私有docker倉庫 10.熟悉linux下運維管理軟件saltstack 11.熟悉ubuntu操做系統
/宿主機與容器文件互相拷貝
https://www.cnblogs.com/jifeng/p/10930111.html
cat /etc/docker/daemon.json #修改這個文件爲以下內容,可先備份文件 { "registry-mirrors": [ "http://95822026.m.daocloud.io" ], "insecure-registries": [] } #重啓docker systemctl restart docker