# Base image for Rocket.Chat FROM rocketchat/base:8 ENV RC_VERSION 0.65.2 MAINTAINER buildmaster@rocket.chat # Install Rocket.Chat RUN set -x \ && curl -SLf "https://releases.rocket.chat/${RC_VERSION}/download/" -o rocket.chat.tgz \ && curl -SLf "https://releases.rocket.chat/${RC_VERSION}/asc" -o rocket.chat.tgz.asc \ && gpg --verify rocket.chat.tgz.asc \ && mkdir -p /app \ && tar -zxf rocket.chat.tgz -C /app \ && rm rocket.chat.tgz rocket.chat.tgz.asc \ && cd /app/bundle/programs/server \ && npm install \ && npm cache clear --force \ && chown -R rocketchat:rocketchat /app # # Install iptables # RUN apt-get update && \ # apt-get install -y iptables && \ # rm -rf /var/lib/apt/lists/* # Set up iptables rule to redirect port 7860 to 3000 RUN iptables -t nat -A PREROUTING -p tcp --dport 7860 -j REDIRECT --to-port 3000 USER rocketchat VOLUME /app/uploads WORKDIR /app/bundle # Environment settings for Rocket.Chat ENV DEPLOY_METHOD=docker \ NODE_ENV=production \ MONGO_URL=mongodb://mongo:27017/rocketchat \ HOME=/tmp \ PORT=3000 \ ROOT_URL=http://localhost:3000 \ Accounts_AvatarStorePath=/app/uploads # Expose the external port 7860 EXPOSE 7860 CMD ["node", "main.js"]