1 安裝docker
開始安裝
- 由于apt官方庫(kù)里的docker版本可能比較舊码荔,所以先卸載可能存在的舊版本:
$ sudo apt-get remove docker docker-engine docker-ce docker.io
- 更新apt包索引:
$ sudo apt-get update
- 安裝以下包以使apt可以通過(guò)HTTPS使用存儲(chǔ)庫(kù)(repository):
$ sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
- 添加Docker官方的GPG密鑰:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- 使用下面的命令來(lái)設(shè)置stable存儲(chǔ)庫(kù):
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- 再更新一下apt包索引:
$ sudo apt-get update
- 安裝最新版本的Docker CE:
$ sudo apt-get install -y docker-ce
- 在生產(chǎn)系統(tǒng)上喻鳄,可能會(huì)需要應(yīng)該安裝一個(gè)特定版本的Docker CE,而不是總是使用最新版本:
列出可用的版本:
$ apt-cache madison docker-ce
選擇要安裝的特定版本怠李,第二列是版本字符串,第三列是存儲(chǔ)庫(kù)名稱,它指示包來(lái)自哪個(gè)存儲(chǔ)庫(kù),以及擴(kuò)展它的穩(wěn)定性級(jí)別吹散。要安裝一個(gè)特定的版本,將版本字符串附加到包名中八酒,并通過(guò)等號(hào)(=)分隔它們:
$ sudo apt-get install docker-ce=<VERSION> # 隨意選擇一個(gè)版本即可
驗(yàn)證docker
- 查看docker服務(wù)是否啟動(dòng):
$ systemctl status docker
- 若未啟動(dòng)空民,則啟動(dòng)docker服務(wù):
$ sudo systemctl start docker
- 經(jīng)典的hello world:
$ sudo docker run hello-world
安裝docker-compose
如果沒(méi)有pip 先安裝pip
sudo apt-get install python-pip
sudo pip install docker-compose
2.sentry部署
(1)構(gòu)建容器
$ sudo apt-get install git
$ git clone https://github.com/getsentry/onpremise.git
$ cd onpremise
(2)cd onpremise,執(zhí)行命令生成key
注意:以下所有的目錄,都是要在onpremise下執(zhí)行的
docker-compose run --rm web config generate-secret-key
在這里可能會(huì)報(bào)錯(cuò),如下所示
ERROR: Couldn't connect to Docker daemon at http://localhost:4243 - is it running?
解決方法如下:
- 配置/lib/systemd/system/docker.service
sudo vim /lib/systemd/system/docker.service
這里的0.0.0.0根據(jù)自己的需求配置是否只需要配置本地
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:4243
- 配置/etc/default/docker
sudo vim /etc/default/docker
DOCKER_OPTS="-H tcp://localhost:4243 -H unix:///var/run/docker.sock
- DOCKER_HOST的環(huán)境變量設(shè)置
sudo vim /etc/profile 或者 sudo vim ~/.bashrc
export DOCKER_HOST=tcp://localhost:4243
- 重啟docker
systemctl daemon-reload
sudo service docker restart
- 然后重新執(zhí)行
docker-compose run --rm web config generate-secret-key
然后就是等待,時(shí)間比較長(zhǎng),大概半小時(shí).
執(zhí)行完后會(huì)生成一個(gè)key,復(fù)制這個(gè)key
(3)將key添加到docker-compose文件里
sudo vim docker-compose.yml
# 取消SENTRY_SECRET_KEY的注釋界轩,并把剛剛復(fù)制的字符串插入其中画饥,類似如下:
version: '2'
services:
base:
restart: unless-stopped
build: .
environment:
# Run `docker-compose run web config generate-secret-key`
# to get the SENTRY_SECRET_KEY value.
SENTRY_SECRET_KEY: '8kn@wvg)qcm5ufg9sanfdada6qn)-0rd^%8j)@m4h=kxn(t)sv'
SENTRY_MEMCACHED_HOST: memcached
SENTRY_REDIS_HOST: redis
SENTRY_POSTGRES_HOST: postgres
SENTRY_EMAIL_HOST: smtp
(4)重建數(shù)據(jù)庫(kù),并創(chuàng)建sentry超級(jí)管理員用戶
docker-compose run --rm web upgrade
這里會(huì)持續(xù)大概半小時(shí)
快結(jié)束時(shí),會(huì)創(chuàng)建用戶,sentry新建的時(shí)候需要一個(gè)超級(jí)管理員用戶:
(5)啟動(dòng)所有服務(wù)
docker-compose up -d
(6)訪問(wèn)sentry
打開瀏覽器,輸入url: ipaddress:9000
訪問(wèn)之前可以檢查下容器和端口情況:
docker ps看下當(dāng)前運(yùn)行的容器:
netstat -ant 查看端口打開情況:
登陸界面浊猾,這里會(huì)提示你的Root URL抖甘,如果不想更改繼續(xù)下一步即可完成:
頁(yè)面展示:
至此sentry搭建完成!
3.簡(jiǎn)單應(yīng)用
在這里,我以django項(xiàng)目為例,做個(gè)示范
-
新建一個(gè)項(xiàng)目
1531136157(1).png
這樣創(chuàng)建就完成了,這里我們將上面這個(gè)字符串復(fù)制下來(lái),接下來(lái)回用到
- django中的配置
pip install raven #先安裝raven庫(kù)
#settings文件
INSTALLED_APPS = [
.....
'raven.contrib.django.raven_compat'
]
# 將字符串寫入
RAVEN_CONFIG = {
'dsn': 'http://5ca2ee80314c4749adf65f8f580c3330saodhoia.dahid***',
}
這樣就配置完成了.
項(xiàng)目跑起來(lái),出現(xiàn)bug后,可以在sentry中實(shí)時(shí)看到,當(dāng)然sentry還有很多功能,就不一一贅敘,可以去看它的文檔