以太坊docker環境搭建
1. docker怎麼搭建大數據平台
Docker 項目的目標是實現輕量級的操作系統虛擬化解決方案,換句話說,它可以讓我們把一台物理機虛擬成多台來使用,而且它還可以保存修改、完整遷移到其它地方、性能損耗小等等好處,能夠很好解決我們之前遇到的問題。
那為什麼不用虛擬機方案?
簡單來說,因為它比虛擬機更輕便,啟動一個Docker容器只要幾秒種的時間,在一台物理機上可以創建幾百上千個容器,而虛擬機做不到。
2. 可以在docker里搭建可視化開發環境嗎
不能,你那種需求還是虛擬機吧。
3. 如何搭建Docker標准化開發測試和生產環境
上次有人說不敢在生產環境中用 Docker,所以 SegmentFault 社區組織翻譯 8 個你可能不知道的Docker 知識 這篇文章,和大家介紹一下生產環境中的 Docker 用例。 自從上世紀 90 年代硬體虛擬化被主流的技術廣泛普及之後,對數據中心而言,發生的...
4. 怎麼使用Docker搭建PHP開發環境
Docker流行之前,要搭建開發環境通常有兩種選擇:一種是使用wamp、xampp、mamp等集成開發環境安裝包,另外一種就是使用普通虛擬機來安裝linux伺服器,然後通過下載一鍵安裝包(如:lnmp)或者逐個安裝做需要的軟體。前者雖然簡單,但太不靈活,想要安裝額外的軟體或者版本會很麻煩或者乾脆不知道如何下手;後者除了費時費力,佔用本機資源過多,可能會導致系統運行緩慢
具體情況你可以多去後盾人看個教學視頻,口碑還不錯,值得去嘗試。
5. 怎麼利用docker搭建一個預發布環境
1、首先你要確定使用什麼基礎鏡像:因為你的項目是JAVA項目,在網頁鏈接hub倉庫尋找自己需要的基礎鏡像,推薦使用JAVA 8基礎鏡像
2、搞定服務運行的相關文件,將服務需要運行的文件整理並寫入dockerfile
3、編寫dockerfile文件,選擇基礎鏡像和掛載服務運行文件,運行方式等
4、運行dockerfile打包的鏡像容器就可以了
6. 如何用docker搭建一台虛擬機
docker如果安裝成功,會有一塊虛擬網卡,ip地址默認是172.17.42.1
用docker
search
centos6命令搜索githup中的容器
使用docker
pull
weepee/centos6下載容器到本地
使用docker
images查看本地所有的容器
使用run命令啟動容器
/usr/bin/docker
run
-d
-v
/root:/root
-p
81:80
-p
2222:22
-p
10050:10050
-p
10051:10051
centos6.5_zabbix:v1.3
一定要記住centos6.5_zabbix:v1.3就是第四步查詢到的名稱和版本號
81:80
前面的宿主機的埠,後面是docker中容器所開的埠,兩個埠之間是映射關系
6
docker
ps
查看運行狀態的容器
7
如果提交修改用docker
commit
859549d3f157命令
859549d3f157就是使用docker
ps查詢到的CONTAINER
ID
7. 如何構建基於docker的開發環境
1. 創建一個用於開發Django App的目錄
mkdir django-example && cd django-example
2. 構建基本開發環境
touch Dockerfile
touch pip.conf requirements.txt
pip.conf文件填入以下內容,以便一會用pip安裝Python 模塊時使用阿里雲鏡像加速:
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
requirements.txt文件中填入要安裝的Python 模塊:
django
編寫構建開發環境的Dockerfile文件,填入以下內容:
# MAINTAINER Gevin <[email protected]>
# DOCKER-VERSION 1.12.0
#
# Dockerizing Python: Dockerfile for building python applications
FROM python:2.7.12
MAINTAINER Gevin <[email protected]>
WORKDIR /usr/src/app
# 使用阿里雲的pip鏡像
COPY pip.conf /root/.pip/pip.conf
COPY requirements.txt /usr/src/app/requirements.txt
RUN pip install -r /usr/src/app/requirements.txt
EXPOSE 8000
CMD ["bash"]
然後執行下面命令構建鏡像:
docker build -t gevin/django-example:0.1 .
構建成功後,執行docker images命令,可以查看到當前構建好的image
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gevin/django-example 0.1 1855fc3c8062 12 hours ago 698.9 MB
3. 使用構建的image拉起開發環境
執行下面命令,可以以前台形式拉起django-example鏡像的一個container:
docker run -it --rm -v $(pwd):/usr/src/app gevin/django-example:0.1
上面命令使用了data volume,把當前目錄掛載到container中的工作目錄下,這樣當前目錄下的所有文件都會映射到container的工作目錄下,在工作目錄下的所有改動,也都會保存到宿主機的當前目錄下。
4. 創建django項目
上一步的命令創建了一個安裝了django的互動式的container,直接在該container中執行創建django項目的命令即可:
root@7c91f460599f:/usr/src/app# django-admin startproject dj_example
上述命令,在container中基於django的命令創建了一個django項目,由於上一步操作時把宿主機的當前目錄掛載到container的工作目錄下,因此,剛剛在container中創建的django項目,在宿主機上也能看到。
container:
root@7c91f460599f:/usr/src/app# ls
Dockerfile dj_example pip.conf requirements.txt
宿主機:
django-example ls
Dockerfile dj_example pip.conf requirements.txt
5. 啟動django項目
docker run -it --rm -p 8000:8000 -v $(pwd):/usr/src/app gevin/django-example:0.1 python dj_example/manage.py runserver 0.0.0.0:8000
8. 如何使用docker搭建開發環境
在Mac的home目錄~/.boot2docker下創建了虛擬機所需要的文件,其中boot2docker.iso是虛擬機映像,這是一個由CD-ROM引導的TinyCoreLinux系統;而boot2docker-vm.vmdk文件則是你的虛擬機磁碟,你所有的持久化數據都存放在這里,包括docker創建的lxc容器等文件。
在Mac下,docker被分為客戶端docker-client和服務端docker-daemon兩部分,如果是在linux(比如ubuntu),實際上則是同一個可執行文件同時充當客戶端和服務端。docker-daemon可以監聽unix scoket,也可以在tcp socket(默認埠為4234),docker-client會通過一個叫DOCKER_HOST的環境變數讀取服務地址和埠,因此你應該在你的bash_profile文件裡面添加這么一行:
exportDOCKER_HOST=tcp://127.0.0.1:4243
docker-daemon跑在虛擬機上,這個程序實際上就是接收docker-client發送過來的消息命令,創建、啟動和銷毀lxc容器,以及docker本身的版本管理、映像存儲等等 運行你的第一個docker容器 安裝完成後,就差不多可以開始創建和運行docker容器了,在這之前,你首先得下載一個Image,什麼是Image?我們先來了解docker的2個基礎概念:Image和Container。
Container和Image 在Docker的世界裡,Image是指一個只讀的層(Layer),這里的層是AUFS里的概念,最直觀的方式就是看一下docker官方給出的圖:

Docker使用了一種叫AUFS的文件系統,這種文件系統可以讓你一層一層地疊加修改你的文件,最底下的文件系統是只讀的,如果需要修改文件,AUFS會增加一個可寫的層(Layer),這樣有很多好處,例如不同的Container可以共享底層的只讀文件系統(同一個Kernel),使得你可以跑N多個Container而不至於你的硬碟被擠爆了!這個只讀的層就是Image!而如你所看到的,一個可寫的層就是Container。
那Image和Container的區別是什麼?很簡單,他們的區別僅僅是一個是只讀的層,一個是可寫的層,你可以使用docker commit 命令,將你的Container變成一個Image,也就是提交你所運行的Container的修改內容,變成一個新的只讀的Image,這非常類似於git commit命令,感覺真棒!
