windows虛機+vagrant+docker部署
阿新 • • 發佈:2018-12-12
voltha build
離線執行環境
- 環境準備(virtualbox,vagrant,已裝docker的box檔案)
- 建立共享資料夾詳細見此
- 執行docker容器 > cd /cord/incubator/voltha > source env.sh > docker-compose -f compose/docker-compose-system-test.yml up -d > docker-compose -f compose/docker-compose-system-test.yml ps
- 登陸命令列
> ssh -p 5022 [email protected]
NOTE:
-
已裝環境box: 71:\volt\packages\vagrant-boxes\voltha-boxes\xenial-server-cloudimg-amd64-vagrant-docker.box
-
映象檔案: 71:\volt\packages\images 單個載入 docker load < xxx.tar 指令碼載入> python load-images.py
-
問題
- 過程中遇到ssh登陸cli問題
No vltha-grpc service registered in consul; exiting connection to localhost closed
解決:一定執行source env.sh在Python虛擬環境中執行docker-compos;
- ssh訪問cli很慢或卡住 解決:關閉重新進入。還未找到其他解決辦法。
- 如有問題還請反饋進一步解決
線上build環境(未完,待修改)
軟體版本
- 下載適合系統的virtualbox版本 下載路徑
- 下載適合系統的vagrant版本 下載路徑
- voltha原始碼
- 共享資料夾:10.63.192.71
- github 路徑
- ubuntu雲映象
- 共享資料夾:10.63.192.71/volt/
- 下載路徑
- docker映象
- 共享資料夾:packages/images
安裝
- virtualbox預設安裝
- virtualbox增強功能安裝
參考
- 【設定】->【儲存】->【控制器】(+O 虛擬光碟機)->確定
- 【啟動box】->【裝置】->【安裝增強功能】->強制釋放
- > mkdir /mnt/cdrom
- > mount /dev/sr0 /mnt/cdrom
- cd /mnt/cdrom
- ./VBoxLinuxAdditions.run
- 【控制】->【重啟】
- vagrant預設安裝
- 雲映象啟動
參考路徑
- cmd命令列載入 > vagrant add box NAME xxxx.box > vagrant init NAME > vagrant up vagrant ssh 或者 virtualbox顯示
- apt安裝 apt-get insatall virtualenv
- pip安裝 pip install xxx
上網及源
NOTE
- ip > ifconfig 檢視網絡卡資訊,tx和rx有讀數 配置靜態ip #網路地址轉換NAT不需要 > vi /etc/network/interfaces auto enp0s3 iface enp0s3 inet static address xx.xx.xx.xx gateway xx.xx.xx.xx netmask 255.255.255.0 broadcast xx.xx.xx.xx dns-nameserver xx.xx.xx.xx
- dns > vi /etc/resolve.conf nameserver xx.xx.xx.xx
- 永久proxy > vi /etc/profile http_proxy=“http://myproxyaddr:port/” export http_proxy > source /etc/profile > export #檢視環境變數http_proxy
- apt代理 > /etc/apt/apt.conf Acquire::http::proxy “http://myproxyaddr:port/”; 或 Acquire::http::proxy “http://user:[email protected]:port/”;
- apt 源 > vi /etc/apt/sources.list 更新 > apt-get update
- 防火牆 ufw enable/disable ufw deny/allow ufw status
共享資料夾設定 參考
虛擬機器【設定】->【共享資料夾】->【固定分配】 mkdir /pcshare mount -t vboxsf volt /pcshare
python虛擬環境
- apt安裝 apt-get insatall virtualenv
- pip安裝 pip install xxx
vagrant ssh(進入ubuntu)
- 配置代理
- 更新映象源 > mv /etc/apt/source.list /etc/apt/source.list.bak > cp /pcshare/source.list /etc/apt/source.list > apt-get update
- 更新pip源 > mkdir ~/.pip > vi ~/.pip/pip.conf > python -m pip install --upgrade pip > ln -s /user/local/bin/pip /usr/bin/pip
- 安裝docker
- ubuntu16.0.14 > apt-get install docker.io
- 配置docker hub源 無資料夾先建立 >mkdir -p /etc/systemd/system/docker.service.d > vi /etc/systemd/system/docker.service.d/http-proxy.conf 新增 [Service] Environment=“HTTP_PROXY=http://proxy.example.com:80/” >sudo systemctl daemon-reload >systemctl show --property=Environment docker >systemctl restart docker
- 配置docker代理 > vi /etc/docker/daemon.json { “registry-mirrors”: [“https://registry.docker-cn.com”] } dns (#不一定要配置) { “dns”:[xx.xx.xx.xx] }
錯誤
-
TypeError: unsupported operand type(s) for -=: ‘retry’ and ‘int’ proxy設定,上網
-
astroid requires Python ‘>=3.4.*’ but the running python is 2.7.12 臨時註釋掉pylint安裝requires.txt
-
pypcap 找不到pcap.h apt-get install libpcap-dev pip install pypcap
-
s.startwith(’/’) python環境不對,退出virtualenv(>deactivate)