Docker學習筆記-搭建2048小遊戲和nginx伺服器
以下例項操作基於rhel7.2
一.Docker 簡介
Docker 是一個開源的應用容器引擎,主要利用 linux 核心 namespace 實現沙盒隔離,用cgroup 實現資源限制。Docker 支援三種不同的映象層次儲存的 drivers:aufs、devicemapper、btrfs ;
Aufs:AUFS (AnotherUnionFS) 是一種 Union FS, 簡單來說就是支援將不同目錄掛載到同一個虛擬 文 件 系 統 下 (unite several directories into a single virtual filesystem) 的 文 件 系 統 。 Aufsdriver 是 docker 最早支援的 driver,但是 aufs 只是 linux 核心的一個補丁集而且不太可以會被合併加入到 linux 核心中。但是由於 aufs 是唯一一個 storage driver 可以實現容器間共享可執行及可共享的執行庫, 所以當執行成千上百個擁有相同程式程式碼或者執行庫時時候,aufs是個相當不錯的選擇。
Device Mapper:Device mapper
Device mapper driver 會建立一個 100G 的簡單檔案包含你的映象和容器。每一個容器被限制 在 10G 大 小 的 卷 內 。 ( 如 果 想 要 調 整 , 參考 :http://jpetazzo.github.io/2014/01/29/docker-device-mapper-resize/ 。 )
你可以在啟動 docker daemon 時用引數-s 指定 driver:docker -d -s devicemapper ;
Btrfs:Btufs driver
在 沒 有 aufs 支 持 的 linux 發 行 版 本 上 (CentOS,opensuse 等 ) 安 裝 docker 可 能 就 使 用 了devicemapper driver。
二.Docker安裝
下載docker 的rpm包
三.Docker容器管理
1.容器(container)和映象(images)的區別示意圖
要點:容器=映象+讀寫層
2.Docker容器檔案系統
3.Docker命令解釋
# docker run -it --name vm1 ubuntu bash 建立容器
# docker ps -a 檢視容器程序
# docker attach vm1 連線容器
# docker top vm1 檢視容器程序
# docker logs vm1 檢視容器指令輸出 -f 引數可以實時檢視
# docker inspect vm1 檢視容器詳情
# docker stats vm1 檢視容器資源使用率
# docker diff vm1 檢視容器修改
# docker run -d --name vm1 ubuntu bash -c "while true; do echo westos; sleep 1; done" 後臺執行
# docker stop vm1 停止容器
# docker start vm1 啟動容器
# docker kill vm1 強制幹掉容器
# docker restart vm1 重啟容器
# docker pause/unpause vm1 暫停/恢復容器
# docker rm vm1 刪除容器
# docker export vm1 > vm1.tar 匯出容器
# docker import vm1.tar image 匯入容器為映象 image
4.例項
(1).搭建2048小遊戲
# docker load -i game2048.tar #匯入映象
# docker inspect game2048 #此命令用來檢視映象詳細資訊
# docker run -d -p 8000:80 --name game game2048 #執行小遊戲,並將容器的80埠對映到本機的8090端庫執行
測試:在本機瀏覽器:172.25.254.50:8090
(2).搭建nginx伺服器
[[email protected] 2-26-文件-Docker]# docker load -i nginx.tar #匯入映象
d8bd0657b25f: Loading layer 130.9 MB/130.9 MB
a582cd499e0f: Loading layer 1.024 kB/1.024 kB
f5a1ef78853b: Loading layer 1.024 kB/1.024 kB
605083c53cc5: Loading layer 1.024 kB/1.024 kB
c95d1af3960d: Loading layer 67.97 MB/67.97 MB
0a410ba58143: Loading layer 3.584 kB/3.584 kB
fb6fc13654c9: Loading layer 1.024 kB/1.024 kB
36b0adefb2f3: Loading layer 1.024 kB/1.024 kB
[[email protected] 2-26-文件-Docker]# docker images #檢視映象
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest af4b3d7d5401 23 months ago 190.5 MB
#瞭解nginx容器的配置:
[[email protected] 2-26-文件-Docker]# docker run -it nginx bash
[email protected]:/# find / -name nginx
/etc/default/nginx
/etc/init.d/nginx
/etc/logrotate.d/nginx
/etc/nginx
/usr/lib/nginx
/usr/sbin/nginx
/usr/share/doc/nginx
/usr/share/nginx
/var/cache/nginx
/var/log/nginx
[email protected]:/# cd /etc/nginx/conf.d/
[email protected]:/etc/nginx/conf.d# ls
default.conf #nginx的配置檔案
[email protected]:/etc/nginx/conf.d# cat default.conf
[[email protected] 2-26-文件-Docker]# docker run -d --name nginxserver nginx #執行nginx容器並起名為nginxserver
b10bad72981d6b26c2fbcbf21e43eb35d7daa128b290ab110938e5236571b74c
[[email protected] 2-26-文件-Docker]# docker kill `docker ps -q`
b10bad72981d
1ee3a2a4fa40
[[email protected] 2-26-文件-Docker]# docker rm `docker ps -aq`
b10bad72981d
1ee3a2a4fa40
[[email protected] 2-26-文件-Docker]# docker run -d --name web -p 80:80 -v /tmp/docker/web/:/wrh -v /tmp/docker/vhost.conf:/etc/nginx/conf.d/vhost.conf nginx
4b4b297ed6a00f68b5cc2fdc92d1cb446d28da6f46e5083917759fabae7b3c78
[[email protected] 2-26-文件-Docker]# vim /tmp/docker/web/index.html
相關推薦
Docker學習筆記-搭建2048小遊戲和nginx伺服器
以下例項操作基於rhel7.2一.Docker 簡介Docker 是一個開源的應用容器引擎,主要利用 linux 核心 namespace 實現沙盒隔離,用cgroup 實現資源限制。Docker 支援三種不同的映象層次儲存的 drivers:aufs、devicemappe
Docker學習筆記-mysql映象的使用和外網訪問
1. Pull mysql 執行命令docker pull mysql 2. 建立mysql容器 docker run --name
Python學習筆記_Pygame(基礎學習 pie小遊戲和 方塊碰撞變色)
下載Python3.6.5對應的pygame-1.9.4-cp36-cp36m-win32.whl檔案在PIP中安裝 1.畫弧 import pygame from pygame import * import sys import math pygame.init()
【python學習】使用python寫一個2048小遊戲
ast stc 遊戲 多少 wan nbsp 小遊戲 效果 參考 個人博客:jerwang.cn 沒有參考其他代碼,效果圖: 話不多少,源代碼: https://github.com/jerustc/Python/blob/master/2048.py【python學
Docker學習筆記2-mysql鏡像的使用和外網訪問
雲計算 Docker 1. Pull mysql執行命令docker pull mysql2. 創建mysql容器docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql創建完成後,查看容器運行狀態可以看到m
Docker 學習筆記(一):Docker 基本命令 和 用 Dockerfile build 一個 JDK 映象
本文件為學習筆記,部分內容將持續更新。 注:本人信仰用最簡單的方式去做一些事,怎麼簡單怎麼來,也許不求甚解。 Docker 基本命令 docker version 獲取 docke
Docker學習筆記 — Docker私有倉庫搭建
和Mavan的管理一樣,Dockers不僅提供了一箇中央倉庫,同時也允許我們使用registry搭建本地私有倉庫。 使用私有倉庫有許多優點: 節省網路頻寬,針對於每個映象不用每個人都去中央倉庫上面去下載,只需要從私有倉庫中下載即可; 提供映象資源利用,針對
Docker學習筆記:Docker 基礎用法和命令幫助
Usage of docker: --api-enable-cors=false Enable CORS headers in the remote API # 遠端 API 中開啟 CORS
Docker 學習筆記:Docker簡介和安裝
一、Docker 簡介 Docker 兩個主要部件:
docker學習筆記16:Dockerfile 指令 ADD 和 COPY介紹
一、ADD指令 ADD指令的功能是將主機構建環境(上下文)目錄中的檔案和目錄、以及一個URL標記的檔案 拷貝到映象中。 其格式是: ADD 源路徑 目標路徑 如: #test FROM ubuntu MAINTAINER hello ADD test1.txt t
Docker學習筆記(一):使用docker搭建LNMP環境
公司使用docker部署伺服器環境,之前沒有接觸過,於是使用阿里雲伺服器學習使用docker,記錄一下學習過程。首先了解Docker,查看了很多網上的資料,說下自己的理解,docker與linux虛擬機器類似,是一個用來把打包好的環境映象放在容器中執行的工具(引擎),dock
Docker 學習筆記_安裝和使用MongoDB
虛擬機 http .com 端口映射 學習筆記 alt 存儲 鏡像 mage 一、準備 1、宿主機OS:Win10 64 2、虛擬機OS:Ubuntu18.04 3、賬號:docker 二、安裝 1、搜索MongoDB鏡像
Docker學習筆記_安裝和使用Zookeeper
ash http rest zook info run 4.4 win png 一、準備 1、宿主機OS:Win10 64位 2、虛擬機OS:Ubuntu18.04 3、賬號:docker 二、安裝 1、搜索鏡像
DOCKER 學習筆記8 Docker Swarm 叢集搭建
前言 在前面的文章中,已經介紹如何在本地通過Docker Machine 建立虛擬Docker 主機,以及也可以在本地Windows 建立虛擬主機,也是可以使用的。這一節,我們將繼續學習 Docker 三劍客之一 : Docker Swarm Docker Swarm Docker Swarm 是Docker
docker 學習筆記
名稱 ted lte settings 刪除 學習 pat doc mem 1.查詢dockers 某個容器的ip地址。 [[email protected]/* */ ~]# docker inspect --format=‘{{.NetworkSett
【Unity 3D】學習筆記三十:遊戲元素——遊戲地形
nbsp 3d遊戲 strong 直觀 分辨率 == 摩擦力 fill 世界 遊戲地形 在遊戲的世界中,必然會有非常多豐富多彩的遊戲元素融合當中。它們種類繁多。作用也不大同樣。一般對於遊戲元素可分為兩種:經經常使用。不經經常使用。經常使用的元素是遊戲中比較重要的元素。一
2048小遊戲主要算法實現
mes 方向 時間限制 上下左右 print ron weight color ges http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=4681 4681: 2
soapUI學習筆記---斷言的小使用
cnblogs 輸入 .cn cas 點擊 使用 tca 種類 選中 轉自:http://www.cnblogs.com/duimianyoushan/p/4274791.html 以下示例在soapUI 4.5中進行。剛開始學soapUI的使用,記錄下以免忘記 1.創建p
docker學習筆記
不一致 規模 操作 崩潰 快速 新的 內存 並發 發熱 一:docker理解 docker的通俗化定義:docker相當於一個容器,你可以把任何程序放到docker中。 它是一個軟件容器化平臺。 二:docker思想 集裝箱:如果只是單純地把項目
Spring+SpringMVC+MyBatis深入學習及搭建(十四)——SpringMVC和MyBatis整合
文件拷貝 conf lips glib ide doc from ive body 轉載請註明出處:http://www.cnblogs.com/Joanna-Yan/p/7010363.html 前面講到:Spring+SpringMVC+MyBatis深入學習及搭建(