Ubuntu 14.04 16.04 (使用apt-get進行安裝)
血淚教訓 : 不要用fish 好多權限拿不到,不解析。
step 0:卸載舊版本docker
全新安裝時,無需執行該步驟
sudo apt-get remove docker docker-engine docker.io
step 1: 安裝必要的一些系統工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
step 2: 安裝GPG證書
sudo curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
Step 3: 寫入軟件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
Step 4: 更新並安裝 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
安裝指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# sudo apt-cache madison docker-ce
# docker-ce | 17.03.1~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# docker-ce | 17.03.0~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安裝指定版本的Docker-CE: (VERSION 例如上面的 17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]
Step 5: 安裝校驗
root@aaa:$ sudo docker version
Client:
Version: 17.03.0-ce
API version: 1.26
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Server:
Version: 17.03.0-ce
API version: 1.26 (minimum version 1.12)
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Experimental: false
1
參考地址:
https://yq.aliyun.com/articles/110806
二、docker-compose安裝
轉載地址: https://blog.csdn.net/nimoyaoww/article/details/79155489
1、下載docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
2、授權
sudo chmod +x /usr/local/bin/docker-compose
3、查看版本信息
docker-compose --version
顯示出版本信息,即安裝成功。
docker-compose命令執行錯誤的解決(Couldn’t connect to Docker daemon at http+unix://var/run/docker.sock)
在命令行中直接執行docker-compose時可能會報出以下錯誤:
[exec] Couldn’t connect to Docker daemon at http+unix://var/run/docker.sock - is it running?
[exec]
[exec] If it’s at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
[exec] Result: 1
解決方法:
sudo vin /etc/default/docker
修改下面的參數:
DOCKER_OPTS="-H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock"
問題描述:
doker啓動時,報錯:docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:301: running exec setns process for init caused “exit status 23"”: unknown.
環境:Ubuntu 14.04
原因
docker的版本和linux的內核版本不兼容
解決辦法
升級linux內核,執行下列命令
sudo apt-get install --install-recommends linux-generic-lts-xenial
注意,更新了內核後,需要重啓系統。
reboot
重啓docker服務:
sudo service docker restart
安裝JHipster Console
下載JHipster Console的docker-compose文件:
sudo curl -O https://raw.githubusercontent.com/jhipster/jhipster-console/master/bootstrap/docker-compose.yml
啓動:
sudo docker-compose up -d
停止:
sudo docker-compose stop
需要注意的是JHipster Console幾個相關的項目之間是互相調用的,採用官方的docker-compose文件啓動默認是可以互相調用的,如果有問題一般出現在系統上其他服務佔用了端口。或者自己調整地址和端口後修改一下配置文件即可。主要的服務和端口有:
jhipster-elasticsearch
es服務端口:9200
jhipster-logstash
logstash API 端口:9600
tcp 日誌收集端口:5000
http 日誌收集端口:5001
jhipster-console
web訪問端口:5601
zipkin
web訪問端口:9411
配置JHipster Console
jhipster:
metrics:
jmx.enabled: true
graphite: # Send metrics to a Graphite server
enabled: true
host: localhost
port: 2003
prefix: jhipster
prometheus: # Expose Prometheus metrics on the /prometheusMetrics endpoint
enabled: true
endpoint: /prometheusMetrics
root@ubuntu1404:/data# sudo docker-compose up -d
WARNING: The state variable is not set. Defaulting to a blank string.
Starting data_jhipster-alerter_1 …
Starting data_jhipster-curator_1 …
Starting data_jhipster-logstash_1 …
Starting data_jhipster-elasticsearch_1 …
Starting data_jhipster-zipkin_1 …
Starting data_jhipster-curator_1 … error
回出現兩個錯誤 從問題應該是代碼拉去 是國外問題,不能完全成功,還有就是docker 於ubuntu 版本不一致問題,目前不影響elk 日誌使用 暫時沒找到好的解決方式,後期回更新。
ERROR: for data_jhipster-curator_1 Cannot start service jhipster-curator: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:297: copying bootstrap data to pipe Starting data_jhipster-alerter_1 … error
ERROR: for data_jhipster-alerter_1 Cannot start service jhipster-alerter: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:301: running exec setns process for Starting data_jhipster-console_1 … error
docker: Error response from daemon: OCI runtime create failed: unable to retrieve OCI runtime error (open /run/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/6602807a7f1a03689a847741b0a10171788f7bed2aa92a4dff35c429b02248d1/log.json: no such file or directory): docker-runc did not terminate sucessfully: docker-runc: symbol lookup error: docker-runc: undefined symbol: seccomp_version
解決方法:
升級系統到7.4,即可解決
執行yum update,時間比較長,耐心等待。
[root@bogon ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@bogon ~]# docker run -it centos echo haha
還有一個解決方法時安裝低版本的docker,docker與操作系統的版本依賴性特別強,在安裝時務必要注意!
外國人是這樣解釋的:
RHEL 7.2 is no longer supported and Docker does not test their release against unsupported versions. You need to upgrade your OS, preferably to 7.4, to resolve this issue.
I’ve seen a few people with similar issues in the past few days that resolved this same error message by upgrading their OS. Some of the older packages no longer work with newer docker releases. One of those problems is an outdated libseccomp: https://github.com/moby/moby/issues/35906