主頁(yè) > 知識(shí)庫(kù) > 在Mac OS下使用docker構(gòu)建基于node的博客程序hexo

在Mac OS下使用docker構(gòu)建基于node的博客程序hexo

熱門(mén)標(biāo)簽:在抖音做地圖標(biāo)注用手機(jī)標(biāo) 北京電話(huà)機(jī)器人哪家便宜 電話(huà)機(jī)器人近幾年收費(fèi)標(biāo)準(zhǔn) 長(zhǎng)治市400企業(yè)電話(huà)申請(qǐng)費(fèi)用 溫州鹿城地圖標(biāo)注找誰(shuí) 南昌crm外呼系統(tǒng)價(jià)格 廈門(mén)語(yǔ)音電銷(xiāo)機(jī)器人價(jià)格 網(wǎng)絡(luò)外呼系統(tǒng)怎么樣 ai外呼系統(tǒng)怎樣掛機(jī)賺錢(qián)

截止目前為止,在docker hub上還看不到hexo 3+版本的鏡像構(gòu)建。
由于Node環(huán)境的安裝時(shí)間比較長(zhǎng),對(duì)于電腦比較多的人相對(duì)來(lái)說(shuō)還是比較麻煩的。
基于DockerFile構(gòu)建自己的HEXO環(huán)境非常靈活,可以根據(jù)自己的情況進(jìn)行定制。
可以導(dǎo)入導(dǎo)出復(fù)制環(huán)境部署到其他電腦中。
實(shí)踐開(kāi)始
docker安裝
大部分Linux,比如說(shuō)Ubuntu,Debian都可以通過(guò)如下命令安裝:

curl -sSL https://get.daocloud.io/docker | sh
TIP:別忘了配置好DaoCloud加速,不然構(gòu)建速度很慢。

構(gòu)建

復(fù)制代碼
代碼如下:

docker build -t hexo3 - hexo3.dockerfile

hexo3.dockerfile 如下:

復(fù)制代碼
代碼如下:

FROM node:slim

MAINTAINER Jianying Li lijianying12@gmail.com>

# instal basic tool
RUN apt-get update apt-get install -y git ssh-client ca-certificates --no-install-recommends rm -r /var/lib/apt/lists/*
# set time zone
RUN echo "Asia/Shanghai" > /etc/timezone dpkg-reconfigure -f noninteractive tzdata
# install hexo
RUN npm install hexo@3.0.0 -g
# set base dir
RUN mkdir /hexo
# set home dir
WORKDIR /hexo

EXPOSE 4000

CMD ["/bin/bash"]

定制自己的image請(qǐng)注意,現(xiàn)在最簡(jiǎn)潔的三個(gè)包內(nèi)容為:

git,部署的時(shí)候用(如果不用git部署請(qǐng)去掉)。
ssh-client(ssh方式的git部署依賴(lài))。
ca-certificates(https方式的git部署依賴(lài))。
TIP: 在shell中或者lib中調(diào)用https方式通訊的時(shí)候如果報(bào)錯(cuò)

復(fù)制代碼
代碼如下:

Problem with the SSL CA cert (path? access rights?)

可以通過(guò)安裝包:ca-certificates 來(lái)解決問(wèn)題,yum apt中都是如此。

構(gòu)建時(shí)間大概十幾分鐘完成。

準(zhǔn)備把實(shí)體機(jī)(host)上的文件掛載到docker中
安裝Guest Additions, 因?yàn)橐褂肧hared Floader。
使用命令 sudo mount -t vboxsf [sharename] [dist]來(lái)掛載共享目錄。
運(yùn)行

復(fù)制代碼
代碼如下:

docker run -it -d -p 4000:4000 -v /root/blog:/hexo/ --name hexo hexo3

注意路徑 /root/blog/ 是我VirtualBox 虛擬機(jī)中blog存儲(chǔ)的位置。

注意參數(shù)/root/blog/需要使用絕對(duì)路徑

其他的參數(shù)可以很容易的在manual中找到意義。

備份與還原

復(fù)制代碼
代碼如下:

#docker save hexo3 > /root/hexo3.tar
#docker load /root/hexo3.tar

注意這里使用save而不是export 因?yàn)樾枰4鏆v史層

參考導(dǎo)出大?。?br />

復(fù)制代碼
代碼如下:

du -h /root/hexo3.tar
261M/root/hexo3.tar

從以上所有的工作中,對(duì)比虛擬機(jī)進(jìn)行環(huán)境的構(gòu)建打包,docker具有構(gòu)建環(huán)境時(shí)間更短,打包文件更小的特點(diǎn)。

使用容器操作blog

復(fù)制代碼
代碼如下:

docker exec -it hexo /bin/bash

Tip: 雖然做到了用docker構(gòu)建一個(gè)非常方便移植的hexo環(huán)境,但是運(yùn)行命令hexo的時(shí)候有點(diǎn)慢,但不是那種忍受不了的慢。

小技巧
在調(diào)試的時(shí)候可以使用 docker rm $(docker ps -q -a) 一次性刪除所有的容器,docker rmi $(docker images -q) 一次性刪除所有的鏡像。

標(biāo)簽:隴南 黃石 漯河 荊門(mén) 丹東 法律咨詢(xún) 許昌 武漢

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《在Mac OS下使用docker構(gòu)建基于node的博客程序hexo》,本文關(guān)鍵詞  在,Mac,下,使用,docker,構(gòu)建,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《在Mac OS下使用docker構(gòu)建基于node的博客程序hexo》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于在Mac OS下使用docker構(gòu)建基于node的博客程序hexo的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章