Docker安装和使用Archery

安装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://3u4i....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.json
<<-'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
复制代码

 

posted @   江曹  阅读(1354)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示