安装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