在阿里云上搭建n8n
0.安装docker
0.1 删除Docker相关源
#删除Docker相关源
sudo rm -f /etc/yum.repos.d/docker*.repo
#卸载Docker和相关的软件包
sudo dnf -y remove \
docker-ce \
containerd.io \
docker-ce-rootless-extras \
docker-buildx-plugin \
docker-ce-cli \
docker-compose-plugin
Docker默认保存位置是/var/lib/docker/,卸载Docker时,镜像、容器、存储卷和网络不会被自动删除。如果您想要删除这些数据,需要手动删除。
0.2 执行以下命令安装Docker社区版本
#添加Docker软件包源
sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
#Alibaba Cloud Linux3专用的dnf源兼容插件
sudo dnf -y install dnf-plugin-releasever-adapter --repo alinux3-plus
#安装Docker社区版本,容器运行时containerd.io,以及Docker构建和Compose插件
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
#启动Docker
sudo systemctl start docker
#设置Docker守护进程在系统启动时自动启动
sudo systemctl enable docker
1.解决docker的方式安装n8n,找不到docker.n8n.io/n8nio/n8n:latest镜像的问题
1.1 按官网https://github.com/n8n-io/n8n进行安装
docker volume create n8n_data
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
1.2 会发现报错
Unable to find image 'docker.n8n.io/n8nio/n8n:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers).
See 'docker run --help'.
1.3 当前情况是受docker hub变更的影响,国内拉取镜像会变得不稳定,阿里云加速也会受到影响,您可以配置其他docker加速测试下,但是不能保证一定有效。这边外站找到一些加速源,您可以尝试看看
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://docker.1panel.live",
"https://hub.rat.dev",
"https://docker.actima.top",
"https://atomhub.openatom.cn",
"https://docker.m.daocloud.io",
"https://docker.nastool.de",
"https://dockerpull.org",
"https://registry.dockermirror.com",
"https://docker.m.daocloud.io",
"https://docker.1ms.run",
"https://docker.aityp.com",
"https://dockerhub.xisoul.cn",
"https://docker.imgdb.de",
"https://hub.littlediary.cn",
"https://docker.unsee.tech",
"https://hub.crdz.gq",
"https://hub.firefly.store",
"https://docker.kejilion.pro",
"https://dhub.kubesre.xyz",
"https://hub.xdark.top",
"https://docker.udayun.com"
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
2 重新执行1.1,会发现有如下报错
Your n8n server is configured to use a secure cookie,however you are either visiting this via an insecure URL, or using Safari.To fix this, please consider the following options:Setup TLS/HTTPS (recommended), or
If you are running this locally, and not using Safari, try using localhost instead
If you prefer to disable this security feature (not recommended), set the environment variable N8N_SECURE_COOKIE to false
2.1 解决远程打开出错的问题
设置N8N_SECURE_COOKIE=false
2.2 删除刚才创建的n8n
sudo docker stop n8nsudo docker rm n8n
2.3 把N8N_SECURE_COOKIE设置false后重新启动
sudo docker run -it -d --restart unless-stopped --name n8n -p 5678:5678 -e N8N_SECURE_COOKIE=false -v n8n_data:/home/node/.n8n n8nio/n8n