From 348e931a20ea676d9a464256e6ad851440d5101a Mon Sep 17 00:00:00 2001 From: Christopher Speller Date: Mon, 28 Sep 2015 07:55:59 -0400 Subject: [PATCH] Updating dockerfiles and version.go --- docker/0.5/Dockerfile | 100 -------------- docker/0.5/Dockerrun.aws.json | 13 -- docker/0.5/docker-entry.sh | 122 ------------------ docker/0.5/main.cf | 28 ---- docker/0.6/Dockerrun.aws.zip | Bin 867 -> 0 bytes docker/0.6/config_docker.json | 99 -------------- docker/{0.6 => 1.0}/Dockerfile | 8 +- docker/1.0/Dockerrun.aws.zip | Bin 0 -> 1107 bytes .../.ebextensions/01_files.config | 0 .../Dockerrun.aws/Dockerrun.aws.json | 2 +- docker/1.0/config_docker.json | 89 +++++++++++++ docker/{0.6 => 1.0}/docker-entry.sh | 0 model/version.go | 2 +- 13 files changed, 94 insertions(+), 369 deletions(-) delete mode 100644 docker/0.5/Dockerfile delete mode 100755 docker/0.5/Dockerrun.aws.json delete mode 100755 docker/0.5/docker-entry.sh delete mode 100644 docker/0.5/main.cf delete mode 100644 docker/0.6/Dockerrun.aws.zip delete mode 100644 docker/0.6/config_docker.json rename docker/{0.6 => 1.0}/Dockerfile (80%) create mode 100644 docker/1.0/Dockerrun.aws.zip rename docker/{0.6 => 1.0}/Dockerrun.aws/.ebextensions/01_files.config (100%) rename docker/{0.6 => 1.0}/Dockerrun.aws/Dockerrun.aws.json (75%) create mode 100644 docker/1.0/config_docker.json rename docker/{0.6 => 1.0}/docker-entry.sh (100%) diff --git a/docker/0.5/Dockerfile b/docker/0.5/Dockerfile deleted file mode 100644 index fec69280e0..0000000000 --- a/docker/0.5/Dockerfile +++ /dev/null @@ -1,100 +0,0 @@ -# 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 https://github.com/mattermost/platform/archive/v0.50.tar.gz /go/src/github.com/mattermost/ -RUN mkdir /go/src/github.com/mattermost/platform && tar -zxvf /go/src/github.com/mattermost/v0.50.tar.gz -C /go/src/github.com/mattermost/platform --strip-components=1 - -# Insert postfix config -ADD ./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 diff --git a/docker/0.5/Dockerrun.aws.json b/docker/0.5/Dockerrun.aws.json deleted file mode 100755 index 04c7f42247..0000000000 --- a/docker/0.5/Dockerrun.aws.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "AWSEBDockerrunVersion": "1", - "Image": { - "Name": "mattermost/platform:helium", - "Update": "true" - }, - "Ports": [ - { - "ContainerPort": "80" - } - ], - "Logging": "/var/log/" -} diff --git a/docker/0.5/docker-entry.sh b/docker/0.5/docker-entry.sh deleted file mode 100755 index cfa589041f..0000000000 --- a/docker/0.5/docker-entry.sh +++ /dev/null @@ -1,122 +0,0 @@ -#!/bin/bash -# Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved. -# See License.txt for license information. - -mkdir -p web/static/js - -echo "127.0.0.1 dockerhost" >> /etc/hosts -/etc/init.d/networking restart - -echo configuring mysql - -# SQL!!! -set -e - -get_option () { - local section=$1 - local option=$2 - local default=$3 - ret=$(my_print_defaults $section | grep '^--'${option}'=' | cut -d= -f2-) - [ -z $ret ] && ret=$default - echo $ret -} - - -# Get config -DATADIR="$("mysqld" --verbose --help 2>/dev/null | awk '$1 == "datadir" { print $2; exit }')" -SOCKET=$(get_option mysqld socket "$DATADIR/mysql.sock") -PIDFILE=$(get_option mysqld pid-file "/var/run/mysqld/mysqld.pid") - -if [ ! -d "$DATADIR/mysql" ]; then - if [ -z "$MYSQL_ROOT_PASSWORD" -a -z "$MYSQL_ALLOW_EMPTY_PASSWORD" ]; then - echo >&2 'error: database is uninitialized and MYSQL_ROOT_PASSWORD not set' - echo >&2 ' Did you forget to add -e MYSQL_ROOT_PASSWORD=... ?' - exit 1 - fi - - mkdir -p "$DATADIR" - chown -R mysql:mysql "$DATADIR" - - echo 'Running mysql_install_db' - mysql_install_db --user=mysql --datadir="$DATADIR" --rpm --keep-my-cnf - echo 'Finished mysql_install_db' - - mysqld --user=mysql --datadir="$DATADIR" --skip-networking & - for i in $(seq 30 -1 0); do - [ -S "$SOCKET" ] && break - echo 'MySQL init process in progress...' - sleep 1 - done - if [ $i = 0 ]; then - echo >&2 'MySQL init process failed.' - exit 1 - fi - - # These statements _must_ be on individual lines, and _must_ end with - # semicolons (no line breaks or comments are permitted). - # TODO proper SQL escaping on ALL the things D: - - tempSqlFile=$(mktemp /tmp/mysql-first-time.XXXXXX.sql) - cat > "$tempSqlFile" <<-EOSQL - -- What's done in this file shouldn't be replicated - -- or products like mysql-fabric won't work - SET @@SESSION.SQL_LOG_BIN=0; - - DELETE FROM mysql.user ; - CREATE USER 'root'@'%' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}' ; - GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION ; - DROP DATABASE IF EXISTS test ; - EOSQL - - if [ "$MYSQL_DATABASE" ]; then - echo "CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ;" >> "$tempSqlFile" - fi - - if [ "$MYSQL_USER" -a "$MYSQL_PASSWORD" ]; then - echo "CREATE USER '"$MYSQL_USER"'@'%' IDENTIFIED BY '"$MYSQL_PASSWORD"' ;" >> "$tempSqlFile" - - if [ "$MYSQL_DATABASE" ]; then - echo "GRANT ALL ON \`"$MYSQL_DATABASE"\`.* TO '"$MYSQL_USER"'@'%' ;" >> "$tempSqlFile" - fi - fi - - echo 'FLUSH PRIVILEGES ;' >> "$tempSqlFile" - - mysql -uroot < "$tempSqlFile" - - rm -f "$tempSqlFile" - kill $(cat $PIDFILE) - for i in $(seq 30 -1 0); do - [ -f "$PIDFILE" ] || break - echo 'MySQL init process in progress...' - sleep 1 - done - if [ $i = 0 ]; then - echo >&2 'MySQL hangs during init process.' - exit 1 - fi - echo 'MySQL init process done. Ready for start up.' -fi - -chown -R mysql:mysql "$DATADIR" - -mysqld & - -sleep 5 - -# ------------------------ - -echo starting postfix -/etc/init.d/postfix restart - -echo starting redis -redis-server & - -echo starting react processor -cd /go/src/github.com/mattermost/platform/web/react && npm start & - -echo starting go web server -cd /go/src/github.com/mattermost/platform/; go run mattermost.go -config=config_docker.json & - -echo starting compass watch -cd /go/src/github.com/mattermost/platform/web/sass-files && compass watch diff --git a/docker/0.5/main.cf b/docker/0.5/main.cf deleted file mode 100644 index ed97d37efd..0000000000 --- a/docker/0.5/main.cf +++ /dev/null @@ -1,28 +0,0 @@ -myorigin = mattermost.com -myhostname = mattermost.com - -smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) -biff = no - -append_dot_mydomain = no - -readme_directory = no - -# TLS parameters -smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem -smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key -smtpd_use_tls=no -smtp_use_tls=no -smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache -smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache - -smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination -alias_maps = hash:/etc/aliases -alias_database = hash:/etc/aliases -mydestination = localhost, localhost.localdomain, localhost -relayhost = -mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 -mailbox_size_limit = 0 -recipient_delimiter = + -inet_interfaces = all -inet_protocols = all diff --git a/docker/0.6/Dockerrun.aws.zip b/docker/0.6/Dockerrun.aws.zip deleted file mode 100644 index 342c1549a6edd0e4b24586835f7e44c82103d51b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 867 zcmWIWW@h1H0D-rD67FCIl;C5KVbDuWO06hK%`48#&nwms4dG;9uJyScdKHLEE4UdL zS-vtdFtCUKbp!y-0nr>_bNGCHj_d~VqJh$~80Hul#;0ZGq!#NX=jWwmro)ZhhiUBA zbAefh4S3ide4poZdY*KvlSE4T4auhD)t#N%lBY8#Upjn!Y2pTEAAP6!EkDlNO(xwr48b6f&9$oWSA@B9o`<%C)J+D5mY^cn-_~z|Ko@}$kW1cBtCWcmBj%GcJByE4k zy#AuEX>VU}v86d(W#6HMl3#awFRr*JBf~qvR#to|i{G1=TMs!AA!6*n=e}QWm-!4} zh+G0tz+^=YfOa64SZR;FF67bk!EPV4Na+ZHjn zvT@JoJ#=vK=8Z2*kJdP?7qsb$_;#f$Gi%DE8{$7}W` / RUN apt-get update \ && export DEBIAN_FRONTEND=noninteractive \ - && apt-get -y install mysql-server \ + && apt-get -y install perl wget mysql-server \ && rm -rf /var/lib/apt/lists/* \ && rm -rf /var/lib/mysql && mkdir -p /var/lib/mysql @@ -36,8 +34,8 @@ VOLUME /var/lib/mysql WORKDIR /mattermost # Copy over files -ADD https://github.com/mattermost/platform/releases/download/v0.6.0/mattermost.tar.gz / -RUN tar -zxvf /mattermost.tar.gz --strip-components=1 +ADD https://github.com/mattermost/platform/releases/download/v1.0.0-rc1/mattermost.tar.gz / +RUN tar -zxvf /mattermost.tar.gz --strip-components=1 && rm /mattermost.tar.gz ADD config_docker.json / ADD docker-entry.sh / diff --git a/docker/1.0/Dockerrun.aws.zip b/docker/1.0/Dockerrun.aws.zip new file mode 100644 index 0000000000000000000000000000000000000000..3c0f9fdbee5619c951111b64eee02cecd0f9f03f GIT binary patch literal 1107 zcmWIWW@h1H00B2!8+R}RO7JnrFu3F=XQvhwmFDRsmKW=XhHx@4Pgds)1L4vNZU#n{ z7t9O{EGa-80dR8+ZBWgT!7xWJH7T{CBsH%%Gd~Y%YOgA17zkrARRm}{2Ls4dK3|_B zyMerDMg|6L0;U=m#;0ZGq!#NX=jWwmrh}ahvf!;6h9z6i1!f&K;9-04eV)_ldD5*; z5-I67B%6{~cXnz^p3aG1WXi5r-G^quCn{5Wqnp^RN4R57*NrYi0t*Zk~u!;`zN zu3uPnpCRT*AbaR#lla`|w;JZlt~d&v+}-0j?T7oR={|F;E8YZX{80LPbj@Fdyw_Ln zbKZLPy!yPdp)%{@o3|Tzvdt2Yd8UM!7+Q5Xn)NJ_wEZ3P`is7%y?w#OmgaPoeTNcC ze%&$1IwX8rfZ_9P)AiaJ!0@>Q#0nVUgA$i|S;hHz z;6Tv;1_+iw(e2sIb;v=$wfbN^M{xJ-l1b;>xg1>twhDARURRxQmveHb?}`1^v$smU zvweQfV1BCPn*8Tkn-@PnZuI?O*3Q+M4l^AYyFG7ImxOgIs-1QJV%X#^czT|dVQ%v$ zwQs2#&s_G}>;2nlrq9EBPC3WFe00&7+f;4zzh5**ljGXKB9li&Q=OZVZTd~@Clr?! zOq{L1Df5Kn)sUZz0p5&Ea?H3=tOU^KARxf-))7Rb_!*dfSt02cBb6b{#7w=&W_nHZXyB086q+jQ{`u literal 0 HcmV?d00001 diff --git a/docker/0.6/Dockerrun.aws/.ebextensions/01_files.config b/docker/1.0/Dockerrun.aws/.ebextensions/01_files.config similarity index 100% rename from docker/0.6/Dockerrun.aws/.ebextensions/01_files.config rename to docker/1.0/Dockerrun.aws/.ebextensions/01_files.config diff --git a/docker/0.6/Dockerrun.aws/Dockerrun.aws.json b/docker/1.0/Dockerrun.aws/Dockerrun.aws.json similarity index 75% rename from docker/0.6/Dockerrun.aws/Dockerrun.aws.json rename to docker/1.0/Dockerrun.aws/Dockerrun.aws.json index f6f7cf726a..9fdded15e5 100755 --- a/docker/0.6/Dockerrun.aws/Dockerrun.aws.json +++ b/docker/1.0/Dockerrun.aws/Dockerrun.aws.json @@ -1,7 +1,7 @@ { "AWSEBDockerrunVersion": "1", "Image": { - "Name": "mattermost/platform:0.6", + "Name": "mattermost/platform:1.0", "Update": "true" }, "Ports": [ diff --git a/docker/1.0/config_docker.json b/docker/1.0/config_docker.json new file mode 100644 index 0000000000..06fee9bd5c --- /dev/null +++ b/docker/1.0/config_docker.json @@ -0,0 +1,89 @@ +{ + "ServiceSettings": { + "ListenAddress": ":80", + "MaximumLoginAttempts": 10, + "SegmentDeveloperKey": "", + "GoogleDeveloperKey": "", + "EnableOAuthServiceProvider": false, + "EnableIncomingWebhooks": false, + "EnableTesting": false + }, + "TeamSettings": { + "SiteName": "Mattermost", + "MaxUsersPerTeam": 50, + "EnableTeamCreation": true, + "EnableUserCreation": true, + "RestrictCreationToDomains": "" + }, + "SqlSettings": { + "DriverName": "mysql", + "DataSource": "mmuser:mostest@tcp(dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8", + "DataSourceReplicas": [], + "MaxIdleConns": 10, + "MaxOpenConns": 10, + "Trace": false, + "AtRestEncryptKey": "7rAh6iwQCkV4cA1Gsg3fgGOXJAQ43QV" + }, + "LogSettings": { + "EnableConsole": false, + "ConsoleLevel": "INFO", + "EnableFile": true, + "FileLevel": "INFO", + "FileFormat": "", + "FileLocation": "" + }, + "FileSettings": { + "DriverName": "local", + "Directory": "/mattermost/data/", + "EnablePublicLink": true, + "PublicLinkSalt": "LhaAWC6lYEKHTkBKsvyXNIOfUIT37AX", + "ThumbnailWidth": 120, + "ThumbnailHeight": 100, + "PreviewWidth": 1024, + "PreviewHeight": 0, + "ProfileWidth": 128, + "ProfileHeight": 128, + "InitialFont": "luximbi.ttf", + "AmazonS3AccessKeyId": "", + "AmazonS3SecretAccessKey": "", + "AmazonS3Bucket": "", + "AmazonS3Region": "" + }, + "EmailSettings": { + "EnableSignUpWithEmail": true, + "SendEmailNotifications": false, + "RequireEmailVerification": false, + "FeedbackName": "", + "FeedbackEmail": "", + "SMTPUsername": "", + "SMTPPassword": "", + "SMTPServer": "", + "SMTPPort": "", + "ConnectionSecurity": "", + "InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9Yo", + "PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5e", + "ApplePushServer": "", + "ApplePushCertPublic": "", + "ApplePushCertPrivate": "" + }, + "RateLimitSettings": { + "EnableRateLimiter": true, + "PerSec": 10, + "MemoryStoreSize": 10000, + "VaryByRemoteAddr": true, + "VaryByHeader": "" + }, + "PrivacySettings": { + "ShowEmailAddress": true, + "ShowFullName": true + }, + "GitLabSettings": { + "Enable": false, + "Secret": "", + "Id": "", + "Scope": "", + "AuthEndpoint": "", + "TokenEndpoint": "", + "UserApiEndpoint": "" + } +} \ No newline at end of file diff --git a/docker/0.6/docker-entry.sh b/docker/1.0/docker-entry.sh similarity index 100% rename from docker/0.6/docker-entry.sh rename to docker/1.0/docker-entry.sh diff --git a/model/version.go b/model/version.go index 8f0c76ebe2..233fc37476 100644 --- a/model/version.go +++ b/model/version.go @@ -12,7 +12,7 @@ import ( // It should be maitained in chronological order with most current // release at the front of the list. var versions = []string{ - "0.8.0", + "1.0.0", "0.7.1", "0.7.0", "0.6.0",