ubuntu docker簡單入門與應用
本文使用ubuntu為底層環境,其他發行版除了安裝方式不一樣,別的基本都一樣。
安裝docker
因為ubuntu官方源的docker版本不是最新,所以這裡更新一下docker官方源,以獲取最新版
sudo apt-get update
apt-get install apt-transport-https ca-certificates
#ubuntu官方源的docker版本過低,加入docker源
sudo sh -c "echo deb https://get.docker.io/ubuntu docker main\ > /etc/apt/sources.list"
#新增GPG金鑰
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
#再更新一下
sudo apt-get update
#儘量安裝最新版本安裝
#通過sudo apt seach docker檢視最新版本
sudo apt-get install lxc-docker-1.9.0
————————————————————————————————————————————————————————————————————————————————————————
#以上為網路好的情況下,如果網路不好就老老實實的安裝ubuntu的官方源
sudo apt-get install docker.io
#上面的docker官方源被GFW遮蔽的厲害,網好的您隨意
映象與容器
#安裝完後可以先從docker hub 官方倉庫拉取一個映象
sudo docker run -it ubuntu bash#此操作為開啟互動式shell,會自動檢測本地有無ubuntu映象,如果沒有自動下載
#下載完成後進入互動式shell,在互動shell中進行你需要的操作,例如:
apt-get install nginx
#需要退出,可以輸入exit退出
exit
我們要分清映象與容器的含義
你可以認為映象是一個固定的環境,只要製作好就能隨意放入別的系統使用。
而容器是是一個實時儲存的狀態,每做一步操作都會有所改動,進而生成一個新的容器,如果想要儲存某一個狀態的容器,就使用下面的操作
新建映象
#先檢視每一步操作產生的容器:sudo docker ps -a
#然後每個container id 就是代表一個容器,想要儲存哪個容器就使用如下命令:
sudo docker commit [container id] nginx:v1
#nginx:v1 代表儲存的映象名為nginx,版本號為v1
#注意:我們在使用container id時可以採用前3-4位來表示,不需要全部輸入
生成容器
#檢視映象
sudo docker images#如果不想在互動式shell中執行命令,可以使用run
sudo docker run [映象名/container id] [要執行的命令]
sudo docker run ubuntu:14.04 apt-get install -y nginx
#記得如果要安裝服務的話,一定要加-y,不然會無法下一步
#因為每一步操作都會生成一個不同的容器,我們檢視起來將會非常麻煩,所以可以刪除無用的容器
sudo docker ps -a
刪除映象與容器
#如果想要刪除一個映象
sudo docker image
sudo docker rmi [映象名字/id]
#注意:刪除映象前請確保沒有基於該映象執行的容器,如果有,請先關閉在刪除匯入匯出映象
#如果想要將映象轉換為本地檔案
sudo docker save -o /tmp/nginx.tar nginx:v1#或者
sudo docker save nginx:v1 > /tmp/nginx.tar
#將映象檔案匯入到別的機器
sudo docker load < /tmp/nginx.tar
使用映象
#執行的方法,和埠對映
sudo docker run -ti -p 80:80 nginx:web bash#為啦方便我們一般會使用Dockerfile來進行容器的部署,這裡筆者不再做介紹,感興趣的可以線上搜尋Dockerfile語法
#如果想要對正在執行的容器做操作,並且不生成新的容器,可以使用如下命令:
sudo docker exec -it[container id] bash
#此操作會開啟一個bash,對此容器即時生效,也可以安裝一個openssh,然後對映容器22埠到宿主機任意埠即可訪問。
——————————————————————————————————————————————————————————
Dockerfile
#自用練習Dockerfile展示FROM ubuntu:latest
MAINTAINER Docker [email protected]
RUN apt-get install -y apt-utils
RUN apt-get install -y curl
RUN apt-get install -y ping
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y mysql-server
#ubuntu安裝mysql預設需要在中途輸入密碼,這裡我們跳過這一步驟
COPY index.html /var/www/html/
COPY start.sh /start.sh
RUN chmod 755 /start.sh
CMD /start.sh && tail -f
EXPOSE 80 3306
#start.sh內容如下
#!/bin/bashservice nginx start
service mysql start
#使用方法
#通過Dockerfile建立映象
sudo docker build -t westwell/nginxweb:1.0 .
#使用該映象執行容器
sudo docker run -id -p 80:80 -p 3306:3306 westwell/nginxweb:1.0
#-p將容器埠對映到真機,格式: -p 宿主機埠:容器埠
相關推薦
ubuntu docker簡單入門與應用
本文使用ubuntu為底層環境,其他發行版除了安裝方式不一樣,別的基本都一樣。 安裝docker 因為ubuntu官方源的docker版本不是最新,所以這裡更新一下docker官方源,以獲取最新版
Docker入門與應用系列(六)Docker私有與公共鏡像倉庫
nbsp one 默認 span epo refers 1.8 png list 1.搭建私有鏡像倉庫Docker Hub作為Docker默認官方公共鏡像;如果想搭建自己的私有鏡像倉庫,官方提供registry鏡像,使搭建私有倉庫非常簡單1.1.1下載registry鏡像並
Docker入門與應用系列(八)Docker圖形界面管理之Shipyard
tps 數據庫 sock blog ocs body mage 代理 cell Shipyard基於Docker API實現的容器圖形管理系統,支持container、images、engine、cluster等功能,可滿足我們基本的容器部署需求可堆棧的Docker管理基於
Docker入門與應用系列(七)Docker圖形界面管理之DockerUI
post 簡單的 技術分享 name mage src 入門 .com 系統 1.dockeruiDockerrUI是一個基於Docker API提供圖形化頁面簡單的容器管理系統,支持容器管理、鏡像管理。1.1 下載鏡像 docker pull abh1nav/doc
Docker入門與應用系列(三)容器管理
輸出 clear tag 程序 ipaddr one 停止 1.2 標準 一、啟動容器 啟動容器有兩種方式,一種是基於鏡像新建一個容器並啟動,另一個是將終止狀態的容器重新啟動。 1.1 新建並啟動 主要命令為 docker run 下面的命令輸出一個&rd
Docker入門與應用系列(四)網絡管理
效率 進行 oop 網絡隔離 style docker utc 同時 存在 一、Docker的五種網絡模式 在使用docker run創建docker容器時,可以用--net選項指定容器的網絡模式,Docker有以下5種網絡模式: 1. bridge模式
01:Docker入門與應用實戰
學完這門課程會獲得什麼? 掌握Docker核心概念 熟悉Docker工作原理 獨立使用Docker部署應用程式 接入CI/CD,實現環境標準化 入門須知: 熟悉Linux作業系統 瞭解域名解析原理 瞭解網路 第 1 章: Docker概述 Docker是
iptables簡單命令與應用
iptables 簡單命令 應用 配置文件目錄bash> vim /etc/sysconfig/iptablesWEB服務器,開啟80端口.bash> iptables -A INPUT -p tcp --dport 80 -j ACCEPT郵件服務器,開啟一組端口.bash>
Zookeeper Api(java)入門與應用(轉)
由於 sla 入隊 catch 其中 相同 獲得 保存 amp 如何使用 Zookeeper 作為一個分布式的服務框架,主要用來解決分布式集群中應用系統的一致性問題,它能提供基於類似於文件系統的目錄節點樹方式的數據存儲,但是 Zookeeper 並不是用來專門存儲數據的,它
C++ RCSP智能指針簡單實現與應用
自定義類 例子 定義 memcpy 智能指針 cto ted 分配 思路 智能指針的實現代碼來源博客:《http://blog.csdn.net/to_be_better/article/details/53570910》 修改:添加 get()函數,用以獲得原始指針(ra
VMware Workstation簡單入門與CentOS 7的安裝
Linux study一.VMware Workstation的簡單介紹: VMware Workstation是VMware公司銷售的商業軟件產品之一。這個產品包含一個用於Intelx86兼容電腦的擬機套件,它允許用戶可以簡單的同時創建和運行多個x86的虛擬機,每個虛擬機都可以在相對
離線服務器下docker的部署與應用
download 初學 image PE world 簡單 得到 windows 並不是 一分鐘內形成docker的模糊概念 網上很多文章避免將docker與虛擬機混為一談,但對於初學者來說,完全可以將docker當做一種虛擬機技術,只需要牢牢記住一點最重要的區別:dock
springboot2.0x全系列一springboot2.0x整合ActiveMQ(簡單整合與應用)
ActiveMQ ActiveMQ 是Apache出品,最流行的,能力強勁的開源訊息匯流排。ActiveMQ 是一個完全支援JMS1.1和J2EE 1.4規範的 JMS Provider實現,儘管JMS規範出臺已經是很久的事情了,但是JMS在當今的J2EE應用中間仍然扮演著特殊的地位。 特性 多種語
Redis 入門與應用
目錄 一、Redis 安裝 1、下載 redis 2、安裝 redis 3、設定 redis 4、redis 服務常用的命令 5、測試 redis 二、RedisDesktopManager 的安裝與使用 1、下載與安裝 2、連線 redi
Kafka簡單入門與Spring結合實踐
Kafka簡單入門與Spring結合實踐 一、【安裝部署kafka伺服器環境(centos7.0)】: 1.【注意】新版的kafka已經內建了一個zookeeper環境 2.【安裝與執行】: 可以在kafka官網 http://kafka.ap
Docker 簡單入門
一個 安裝 節奏 簡單介紹 pre 我們 dock 創建 制作 現在主流的容器技術Docker,覺得不學下都跟不上節奏了,這裏簡單介紹docker的安裝以及使用,有問題歡迎指出哈。 這裏主要講以下幾點: Docker 安裝 Docker 鏡像創建 Docker 容器初探
Redis的入門與應用
con predis 判斷 strong make 集合 ash -h 安裝redis擴展 概念: 遠程 基於內存的 非關系型數據庫 應用場景 緩存 隊列 數據存儲 安裝 安裝環境: 服務器:linux>cen
Ajax入門與應用
一、Ajax介紹 1. ajax是什麼? * asynchronous javascript and xml:非同步的js和xml * 它能使用js訪問伺服器,而且是非同步訪問! * 伺服器給客戶端的響應一般是整個頁面,一個html完整頁面!但在ajax中因
Docker技術入門與實戰 第8章 使用Dockerfile建立映象
Dockerfile是一個文字格式的配置檔案,使用者可以使用Dockerfile來快速建立自定義映象。本章首先介紹Dockerfile典型的基本結構和它支援的眾多指令,並具體講解通過這些指令來編寫定製映象的Dockerfile,以及如何生成映象。最後介紹使用Dockerfil
離線伺服器下docker的部署與應用
一分鐘內形成docker的模糊概念 網上很多文章避免將docker與虛擬機器混為一談,但對於初學者來說,完全可以將docker當做一種虛擬機器技術,只需要牢牢記住一點最重要的區別:docker依賴於物理機的核心,所以在linux下“生成的docker”,一般不