在Docker容器中安裝CppCMS

2021-10-14 18:39:55 字數 1290 閱讀 7318

cppcms是乙個基於c++語言的高效能web開發框架,旨在處理極高負荷的web應用。更多介紹可參考:

在乙個docker基礎映象中編譯cppcms,踩了一點點小坑,記錄下來,以備後來查閱。

我用的版本是cppcms-1.2.1,原始碼包放在linux伺服器自己的目錄下(比如/home/users/delia),不建議將安裝包放在映象中,會導致最終構建出來的映象特別大,只需要保證編譯安裝後的庫檔案在容器中即可。

以互動模式執行乙個基礎映象的容器,啟動容器時將主機$home目錄對映到容器$home目錄,在容器中訪問自己的目錄,cd /home/users/delia。

1. 安裝依賴項

apt-get install build-essential libpcre3-dev libicu-dev libgcrypt11-dev zlib1g-dev
這一步不能少,不然後面cmake時會出現各種依賴缺失的報錯。

2. 安裝cppcms

解壓原始碼包:

tar zjvf cppcms-1.2.1.tar.bz2
編譯,依次執行:

mkdir build

cd build

cmake -dcmake_install_prefix=/usr/local ..

注意,以上安裝目錄/usr/local是容器目錄,安裝後,只在容器環境中存在cppcms,而宿主機如果沒有安裝的話,是沒有cppcms庫的。

在執行以上cmake命令時,出現報錯:can't build without python interpreter

在命令列執行python命令,提示找不到命令。不死心,輸入python3,這個存在,版本號是python3.6.9。推斷是python命令沒有鏈結到python3.6.9,而是預設鏈結的python2.7。試了兩種解決方法,都奏效:

(1) 重新安裝python,apt-get install python,這次預設安裝的是python2.7,安裝完成後再次執行python,ok;

(2) 斷開python到python2.7的軟鏈結,重新鏈結到python3.6.9,也ok。

sudo rm /usr/bin/python

sudo ln -s /usr/bin/python3.6 /usr/bin/python

解決以上python問題後,再次執行cmake命令,通過。

接下來 make & make install,完成編譯。

在Docker容器中安裝vim

linux系統沒有vim工具太不方便了,我要在docker容器裡修改一些檔案,所以決定安裝下vim。系統是debian。首先進入容器 前提是容器已經啟動 docker exec it mysql bash mysql是容器名稱,換成你自己的接下來更新下apt get的源。把下面的命令全部複製粘到容器...

在docker容器中安裝vim

reading package lists.done building dependency tree reading state information.done e unable to locate package vim這時候需要敲 apt get update,這個命令的作用是 同步 etc...

在docker容器中安裝opencv python

今天嘗試在docker容器中安裝opencv,按照習慣,正常使用pip安裝 pip install opencv python 可以用pip install i opencv python 更換清華源安裝 如果出現time out 報錯,可以用 default timeout 100來解決。但是當我...