安裝Python3.7
1.安裝依賴 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel zlib* libffi-devel -y 2.下載python文件 wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz 3.解壓文件&進入目錄 tar -xvf Python-3.7.0.tar.xz cd Python-3.7.0 4.編譯 mkdir -p /usr/local/python3.7 ./configure --enable-optimizations --prefix=/usr/local/python3.7 make make altinstall 或者make install 5.修改軟連接 ln -s /usr/local/python3.7/bin/python3.7 /usr/bin/python3 ln -s /usr/local/python3.7/bin/pip3.7 /usr/bin/pip3
舊版本的 Docker 稱為 docker
或者 docker-engine
,使用以下命令卸載舊版本:
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine
配置阿里yum的docker源
$ sudo yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
$ sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo # Docker官方源 # $ sudo yum-config-manager \ # --add-repo \ # https://download.docker.com/linux/centos/docker-ce.repo
安裝docker
$ sudo yum install docker-ce docker-ce-cli containerd.io
配置docker鏡像加速器
#阿里的ECS,如下配置; 不配置有些鏡像pull時提示 "Error response from daemon: ...connection reset by peer"
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://3u4izbfu.mirror.aliyuncs.com"]#此地址為本人的鏡像加速器地址,查看地址 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors } EOF sudo systemctl daemon-reload sudo systemctl restart docker
#自己本地的服務器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.conf <<-'EOF'
{
"registry-mirrors": ["https://3u4izbfu.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
安裝docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-Linux-x86_64" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
安裝部署Archery
#下載archery https://github.com/hhyo/archery/releases/ #解壓后進入docker-compose文件夾 docker-compose -f docker-compose.yml up -d #表結構初始化 docker exec -ti archery /bin/bash cd /opt/archery source /opt/venv4archery/bin/activate python3 manage.py makemigrations sql python3 manage.py migrate #數據初始化 python3 manage.py dbshell<sql/fixtures/auth_group.sql python3 manage.py dbshell<src/init_sql/mysql_slow_query_review.sql #創建管理用戶 python3 manage.py createsuperuser #重啟服務 docker restart archery
#登錄archery
http://10.34.4.199:9123/ #日志查看和問題排查 docker logs archery -f --tail=10 logs/archery.log
一些額外的操作命令
#單獨啟動MySQL容器服務 docker run -p 3306:3306 --name mysql --restart=always \
-v /opt/archery/src/docker-compose/mysql/my.cnf:/etc/mysql/my.cnf \
-v /opt/archery/src/docker-compose/mysql/datadir:/var/lib/mysql \
-e MYSQL_DATABASE=archery -e MYSQL_ROOT_PASSWORD=w..JuieWTPZFxRPo -d mysql:5.7 #關閉/啟動docker編排 docker-compose -f /opt/archery/src/docker-compose/docker-compose.yml down docker-compose -f /opt/archery/src/docker-compose/docker-compose.yml up -d
#如拆分出單獨(docker)MySQL服務,需修改以下文件
#vi /opt/archery/src/docker-compose/archery/settings.py
'HOST': '10.34.4.199' #將mysql服務名修改為對應的IP
#vi /opt/archery/src/docker-compose/docker-compose.yml
entrypoint: "dockerize -wait tcp://10.34.4.199:3306 -wait tcp://redis:6379 -timeout 60s /opt/archery/src/docker/startup.sh" #將mysql服務名修改為對應的IP