摘要:本地開發(fā)環(huán)境是影響工作效率最重要的因素還有一個(gè)是,以后有時(shí)間會(huì)專門寫這個(gè)一般來說有以下幾種方案可以選擇原生安裝這個(gè)是最原始也是最麻煩的,比如搞,要自己裝搞不好還得裝個(gè)。
本地開發(fā)環(huán)境是影響工作效率最重要的因素(還有一個(gè)是IDE,以后有時(shí)間會(huì)專門寫這個(gè))
一般來說有以下幾種方案可以選擇
原生安裝 這個(gè)是最原始也是最麻煩的,比如搞PHP,要自己裝nginx+php+mysql+redis 搞不好還得裝個(gè)node、composer、memcached。這個(gè)搞法基本上熟練也得一天出去了。Mac還好,Windows就要無盡的google了。
虛擬機(jī) 這個(gè)有兩種方案,我都嘗試過,一種是用VM,安個(gè)centos,這種方法和原生安裝差不多,也比較折騰,另外VM虛擬機(jī)占用系統(tǒng)資源太大,每次開機(jī)都比較慢。另一種就是用vargrant,這個(gè)方法的好處是比較輕,開機(jī)快。但是終究是虛擬機(jī),最大的問題就是目錄共享問題,造成無法正常安裝node,總之各種坑
Docker 最終選擇了Docker的方案。Docker基本上是集合了上面的所有優(yōu)點(diǎn)了,他自身最大的好處就是想用的時(shí)候拉起來,不想用的時(shí)候干掉,數(shù)據(jù)和容器是分開的。另外鏡像都是官方的,穩(wěn)定,靠譜。缺點(diǎn)也是有的,就是底層其實(shí)還是用的linux,所以在windows上跑不大穩(wěn)定。
我目前用的方案是
centos7 官方鏡像 里面安裝了 nginx php node
mysql 官方鏡像
redis 官方鏡像
這樣一共需要運(yùn)行三個(gè)容器,數(shù)據(jù)都-v 到本地磁盤,容器干掉了數(shù)據(jù)也不丟失。
常用命令 鏡像搜索鏡像
$ docker search xxx
如果出現(xiàn) connection refused 可以試試重啟docker
下載鏡像
$ docker pull xxx
刪除鏡像
$ docker rmi xxx
本地容器保存快照 生成鏡像壓縮文件
$ docker export -o dev-latest.tar 7e4b0
導(dǎo)入鏡像
$
保存鏡像
$ docker save -o redis-latest.tar 9813
容器導(dǎo)入 是將當(dāng)前容器 變成一個(gè)新的鏡像
鏡像導(dǎo)入 是復(fù)制的過程
save 保存鏡像所有的信息-包含歷史
export 只導(dǎo)出當(dāng)前的信息
查看當(dāng)前運(yùn)行的容器
$ docker ps
$ docker ps -a
$ docker stats
$ docker top
查看當(dāng)前docker版本
$ docker info
運(yùn)行容器
$ docker run -d [-p 主機(jī)端口:容器端口] --name [容器名自定義] [-v 主機(jī)/目錄:容器/目錄] [鏡像名]
例如
centos
$ docker run -d -p 80:80 --name dev -v D:/docker/dev/www:/home/www centos
redis
$ docker run -d -p 6379:6379 --name dev-redis -v D:/docker/redis/data:/data redis
mysql
$ docker run --name dev-mysql -v D:/docker/mysql:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=111111 -d mysql
停止 開啟 重啟
$ docker stop
$ docker start
$ docker restart
刪除容器
$ docker rm
如果有自己的倉庫可以
$ docker login -u 用戶名 -p 密碼 倉庫地址
進(jìn)入容器
$ docker exec -it [容器名] /bin/bash
如果碰到開機(jī)報(bào)錯(cuò):
Docker command did not complete within the allowed timeout. Output:
可能是windows 防火墻問題
在防火墻里放開下面這倆exe
C:Program FilesDockerDockerDocker for Windows.exe
C:Program FilesDockerDockerDockerCli.exe
PS 如果發(fā)現(xiàn)容器里面掛載的目錄不見了
但是執(zhí)行 docker inspect 發(fā)現(xiàn)這個(gè)配置其實(shí)是有的
那么 可能是掛載的主機(jī)磁盤沒有寫權(quán)限 改完后重啟試試
容器間通信默認(rèn)可以用內(nèi)網(wǎng)IP通信 網(wǎng)段是 172.17.0.1...
可以通過下面的命令查看容器IP
$ docker inspect --format="{{.NetworkSettings.IPAddress}}" CONTAINER_ID
這里注意 容器的IP是根據(jù)啟動(dòng)順序來的,不是一直固定的,所以啟動(dòng)的時(shí)候最好有一定順序,避免老去改配置的麻煩
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/27046.html
摘要:核心對(duì)名字空間的支持完全隔離了工作環(huán)境中應(yīng)用程序的視野,包括進(jìn)程樹網(wǎng)絡(luò)用戶與掛載文件系統(tǒng),而核心的提供資源隔離,包括存儲(chǔ)器與網(wǎng)絡(luò)。因此更為輕量快速和易于管理。 docker 如日中天,這不是單純的炒概念,docker 確確實(shí)實(shí)解決了開發(fā)與運(yùn)維的痛點(diǎn),因此在企業(yè)開發(fā)中得到了非常廣泛的使用,本文對(duì)于 docker 的這些基本知識(shí)點(diǎn)再做一些簡(jiǎn)單回顧。 什么是 docker 根據(jù) wikip...
摘要:協(xié)議學(xué)習(xí)常見請(qǐng)求方法學(xué)習(xí)和學(xué)習(xí)接口的基本概念接口文檔認(rèn)識(shí)接口測(cè)試用例編寫接口測(cè)試工具使用軟件測(cè)試自動(dòng)化進(jìn)階性能測(cè)試性能測(cè)試的技術(shù)要求很高,不僅僅要對(duì)性能測(cè)試的指標(biāo)測(cè)試分類測(cè)試設(shè)計(jì)有很深刻的理解。 ...
摘要:開場(chǎng)白作為一個(gè)技術(shù)團(tuán)隊(duì)的,你是如何保證成員的開發(fā)環(huán)境達(dá)到公司的標(biāo)準(zhǔn),或者是你定制的最低要求的如果你的回答是差不多就行了,有問題再說,那么,你已經(jīng)在給自己挖坑了。好的,成員們開始構(gòu)建你定制的開發(fā)環(huán)境了。 開場(chǎng)白 作為一個(gè)技術(shù)團(tuán)隊(duì)的Leader,你是如何保證成員的開發(fā)環(huán)境達(dá)到公司的標(biāo)準(zhǔn),或者是你定制的最低要求的?如果你的回答是:差不多就行了,有問題再說,那么,你已經(jīng)在給自己挖坑了。 同事A...
摘要:蠻吉為什么這么做集中管理,使用方便,安裝更方便,不用到各各目錄上去找配置文件啊,啟動(dòng)文件之類的。蠻吉如果我想修改的配置怎么辦可以使用進(jìn)入容器里面找到并修改,命令退出容器。 What is Docker? docker 是一個(gè)可以放東西的容器,那東西是什么?可以是redis、nginx、mysql??傊隳茉谙到y(tǒng)上安裝的都可以在dokcer里面安裝。 蠻吉:為什么這么做? 集中管理,使用...
摘要:應(yīng)用化極簡(jiǎn)教程陳光劍基于的企業(yè)級(jí)應(yīng)用開發(fā)最佳實(shí)踐前面的章節(jié)中,我們都是在環(huán)境中開發(fā)運(yùn)行測(cè)試應(yīng)用程序。關(guān)鍵字是分布式應(yīng)用微服務(wù)容器虛擬化。通常,在企業(yè)項(xiàng)目實(shí)踐中,會(huì)實(shí)現(xiàn)一套應(yīng)用部署發(fā)布的自動(dòng)化運(yùn)維平臺(tái)工具。 Spring Boot 應(yīng)用 Docker 化 《Spring Boot 2.0極簡(jiǎn)教程》(陳光劍)—— 基于 Gradle + Kotlin的企業(yè)級(jí)應(yīng)用開發(fā)最佳實(shí)踐 前面的章節(jié)中,...
閱讀 3503·2023-04-26 00:39
閱讀 4701·2021-09-22 10:02
閱讀 2582·2021-08-09 13:46
閱讀 1127·2019-08-29 18:40
閱讀 1474·2019-08-29 18:33
閱讀 797·2019-08-29 17:14
閱讀 1543·2019-08-29 12:40
閱讀 3005·2019-08-28 18:07