使用电报机器人在 Heroku 上的 docker 中安装 Rclone [帮助]
Posted
技术标签:
【中文标题】使用电报机器人在 Heroku 上的 docker 中安装 Rclone [帮助]【英文标题】:Rclone installation in docker on heroku with telegram bot [Help] 【发布时间】:2020-05-07 19:27:51 【问题描述】:我想在 heroku 中的 docker 映像上安装 rclone,以便能够将 Rclone 与 python 电报机器人一起使用 我做了一个heroku.yml文件
build:
docker:
worker: Dockerfile
run:
worker: bash start.sh
和 start.sh 一样
python3 -m bot
和 Dockerfile 一样
FROM ubuntu:18.04
WORKDIR /usr/src/app
RUN docker pull rclone/rclone:latest
RUN docker run rclone/rclone:latest version
RUN chmod 777 /usr/src/app
RUN apt -qq update
RUN apt -qq install -y python3 python3-pip locales
COPY requirements.txt .
RUN pip3 install --no-cache-dir -r requirements.txt
COPY . .
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
CMD ["bash","start.sh"]
我在 git bash CLI 中收到错误 The command '/bin/sh -c docker pull rclone/rclone:latest' returned a non-zero code: 127
我做错了什么?或者程序是什么? 提前致谢!
【问题讨论】:
您通常不能在 Docker 空间内运行docker
命令,尤其是不能从 Dockerfile 内运行。这两条线想要完成什么?
我正在尝试安装 rclone,以便我可以在电报机器人 PS 的帮助下执行 shell 命令 - 我尝试了 RUN apt install rclone --classic 并且它成功了!但是我在一个名为 bot 的文件夹中有 2 个文件,它们没有被推送到 heroku,因此 heroku 应用程序崩溃了。谢谢!
【参考方案1】:
FROM ubuntu:16.04
WORKDIR /app
# line number 12 - 15 in your Dockerfile
RUN echo "LC_ALL=en_US.UTF-8" >> /etc/environment
RUN echo "LANG=en_US.UTF-8" >> /etc/environment
RUN more "/etc/environment"
RUN apt-get update
#RUN apt-get upgrade -y
#RUN apt-get dist-upgrade -y
RUN apt-get install curl htop git zip nano ncdu build-essential chrpath libssl-dev libxft-dev pkg-config glib2.0-dev libexpat1-dev gobject-introspection python-gi-dev apt-transport-https libgirepository1.0-dev libtiff5-dev libjpeg-turbo8-dev libgsf-1-dev fail2ban nginx -y
# Install Rclone
RUN curl -sL https://rclone.org/install.sh | bash
RUN rclone version
# Cleanup
RUN apt-get update && apt-get upgrade -y && apt-get autoremove -y
基于this answer
你可以试试这个,也不要尝试在 Dockerfile 中使用 docker 命令。
【讨论】:
我工作并使用了 rclone 二进制文件 你的意思是,Heoku Rclone shell Bot?我也有这个问题,我尝试使用二进制它对我不起作用,所以我使用了这种方法......以上是关于使用电报机器人在 Heroku 上的 docker 中安装 Rclone [帮助]的主要内容,如果未能解决你的问题,请参考以下文章