mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
100 lines
2.7 KiB
Docker
100 lines
2.7 KiB
Docker
# Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved.
|
|
# See License.txt for license information.
|
|
FROM ubuntu:14.04
|
|
|
|
# Install Dependancies
|
|
RUN apt-get update && apt-get install -y build-essential
|
|
RUN apt-get install -y curl
|
|
RUN curl -sL https://deb.nodesource.com/setup | bash -
|
|
RUN apt-get install -y nodejs
|
|
RUN apt-get install -y ruby-full
|
|
RUN gem install compass
|
|
|
|
# Postfix
|
|
RUN apt-get install -y postfix
|
|
|
|
#
|
|
# Install GO
|
|
#
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
gcc libc6-dev make git mercurial \
|
|
--no-install-recommends \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
ENV GOLANG_VERSION 1.4.2
|
|
|
|
RUN curl -sSL https://golang.org/dl/go$GOLANG_VERSION.src.tar.gz \
|
|
| tar -v -C /usr/src -xz
|
|
|
|
RUN cd /usr/src/go/src && ./make.bash --no-clean 2>&1
|
|
|
|
ENV PATH /usr/src/go/bin:$PATH
|
|
|
|
RUN mkdir -p /go/src /go/bin && chmod -R 777 /go
|
|
ENV GOPATH /go
|
|
ENV PATH /go/bin:$PATH
|
|
WORKDIR /go
|
|
|
|
# ---------------------------------------------------------------------------------------------------------------------
|
|
|
|
#
|
|
# Install SQL
|
|
#
|
|
|
|
ENV MYSQL_ROOT_PASSWORD=mostest
|
|
ENV MYSQL_USER=mmuser
|
|
ENV MYSQL_PASSWORD=mostest
|
|
ENV MYSQL_DATABASE=mattermost_test
|
|
|
|
RUN groupadd -r mysql && useradd -r -g mysql mysql
|
|
|
|
RUN apt-get update && apt-get install -y perl --no-install-recommends && rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN apt-key adv --keyserver pool.sks-keyservers.net --recv-keys A4A9406876FCBD3C456770C88C718D3B5072E1F5
|
|
|
|
ENV MYSQL_MAJOR 5.6
|
|
ENV MYSQL_VERSION 5.6.25
|
|
|
|
RUN echo "deb http://repo.mysql.com/apt/debian/ wheezy mysql-${MYSQL_MAJOR}" > /etc/apt/sources.list.d/mysql.list
|
|
|
|
RUN apt-get update \
|
|
&& export DEBIAN_FRONTEND=noninteractive \
|
|
&& apt-get -y install mysql-server \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& rm -rf /var/lib/mysql && mkdir -p /var/lib/mysql
|
|
|
|
RUN sed -Ei 's/^(bind-address|log)/#&/' /etc/mysql/my.cnf
|
|
|
|
VOLUME /var/lib/mysql
|
|
# ---------------------------------------------------------------------------------------------------------------------
|
|
|
|
#
|
|
# Install Redis
|
|
#
|
|
|
|
RUN apt-get update && apt-get install -y wget
|
|
RUN wget http://download.redis.io/redis-stable.tar.gz; \
|
|
tar xvzf redis-stable.tar.gz; \
|
|
cd redis-stable; \
|
|
make install
|
|
|
|
# ---------------------------------------------------------------------------------------------------------------------
|
|
|
|
# Copy over files
|
|
ADD . /go/src/github.com/mattermost/platform
|
|
|
|
# Insert postfix config
|
|
ADD ./docker/main.cf /etc/postfix/
|
|
|
|
RUN go get github.com/tools/godep
|
|
RUN cd /go/src/github.com/mattermost/platform; godep restore
|
|
RUN go install github.com/mattermost/platform
|
|
RUN cd /go/src/github.com/mattermost/platform/web/react; npm install
|
|
|
|
RUN chmod +x /go/src/github.com/mattermost/platform/docker/docker-entry.sh
|
|
ENTRYPOINT /go/src/github.com/mattermost/platform/docker/docker-entry.sh
|
|
|
|
# Ports
|
|
EXPOSE 80
|