在如今容器技術(shù)大行其道的世界里, 想比較知名的中間件、代理、開發(fā)框架都有自己的容器鏡像.
作者為使用者提供了一個最簡單的Dockerfile, 方便大家根據(jù)實際使用情況修改與發(fā)布公有或私有鏡像. 同時幫助項目管理者可靠的進行項目內(nèi)容進行版本管理與發(fā)布.
如果您還是一個初學者, 在您將cf代碼克隆到本地后使用```docker build -t cfweb:v1 .```命令將自動下載并基于centos7構(gòu)建私有鏡像.
這里需要注意的是Dockerfile中間的2條COPY命令, 需要自行下載并且將文件copy到構(gòu)建目錄下. 以防止docker構(gòu)建時找不到依賴庫進行編譯.
構(gòu)建完成后使用docker images
命令可以在本地鏡像列表內(nèi)看到cfweb v1版本鏡像.
如果您僅想測試一下cf! 在上述第二步的時候構(gòu)建本地鏡像完成后即可使用docker run命令運行.
``` docker run -ti -p 8080:8080 cfweb:v1 ```
此時您就可以使用```docker ps | grep cfweb```看到剛剛運行的cfweb容器.
在您使用```curl -v localhost:8080/api```后能得到類似返回后. 則說明您構(gòu)建到鏡像構(gòu)建完成.
[candy@MacBookPro:~/Documents/core_framework] $ curl -v localhost:8080/api
* Trying ::1...
* TCP_NODELAY set
* Connected to localhost (::1) port 8080 (#0)
> GET /api HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.54.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Sun, 24 Mar 2019 09:56:45 GMT
< Allow: GET, POST, HEAD, OPTIONS
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Methods: GET, POST, HEAD, OPTIONS
< server: Candy Server/1.0
< Connection: close
< Transfer-Encoding: identity
< Content-Length: 51
< Content-Type: application/json
< Cache-Control: no-cache, no-store, must-revalidate
< Cache-Control: no-cache
<
* Closing connection 0
{"code":200,"message":"This is GET method request"}
[candy@MacBookPro:~/Documents/core_framework]
作者在master分支制作了一個試用鏡像推送到dockerhub上, 方便大家快速下載試用. (生產(chǎn)環(huán)境請自行制作專屬鏡像)
[candy@bogon:~/Documents/core_framework] $ docker run -ti -p 8080:8080 candymi/cfweb
Unable to find image 'candymi/cfweb:latest' locally
latest: Pulling from candymi/cfweb
8ba884070f61: Already exists
96bb27abb1c4: Already exists
9b7bcf8be16c: Already exists
aae3ef5368d6: Already exists
12e955618ecc: Already exists
Digest: sha256:6e562228642c56c2162d116b0034d868e9dfb25360248d215d6da8504e26c374
Status: Downloaded newer image for candymi/cfweb:latest
[2019/03/25 07:28:41] - 172.17.0.1 - 172.17.0.1 - /api - 200 - time: 0.000145/Sec
測試容器是否正常運行
candy@bogon:~$ curl localhost:8080/api
更多建議: