Mattermost码头预览

时间:2016-06-18 07:43:25

标签: docker port publish mattermost manjaro

我是一名新手,我一直试图在docker上安装mattermost(slack alternative)的预览版以试用它。我一直在关注官方指南。

import com.google.gson.Gson;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

...

String json =
        "{\n" +
        "\"source\": \"somedatabasename\",\n" +
        "\"lisofobjects\": [{\n" +
        "    \"data\": {\n" +
        "        \"starttime\": \"145756767377\",\n" +
        "        \"age\": \"20\",\n" +
        "        \"name\": \"xyz\"\n" +
        "    }\n" +
        "}]" +
        "}";

JsonParser parser = new JsonParser();
JsonObject rootObject = parser.parse(json).getAsJsonObject();

JsonObject firstData = rootObject.getAsJsonArray("lisofobjects")
        .get(0).getAsJsonObject().getAsJsonObject("data");
firstData.remove("age");
firstData.addProperty("age", "abc");

String modifiedJson = new Gson().toJson(rootObject);

很遗憾,我无法打开localhost:8065服务。

我在Docker的错误跟踪器中列出了此问题 https://github.com/docker/docker/issues/23730

我在ubuntu 14.04上安装了它,但仍遇到同样的问题。

docker info的输出

Install Docker using the following commands:

pacman -S docker
systemctl enable docker.service
systemctl start docker.service
gpasswd -a <username> docker
newgrp docker

Start Docker container:

docker run --name mattermost-preview -d --publish 8065:8065 mattermost/mattermost-preview

When Docker is done fetching the image, open http://localhost:8065/ in your browser.

docker version

的输出
Containers: 3
 Running: 1
 Paused: 0
 Stopped: 2
Images: 2
Server Version: 1.11.2
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 33
 Dirperm1 Supported: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins: 
 Volume: local
 Network: null host bridge
Kernel Version: 3.13.0-32-generic
Operating System: Ubuntu 14.04.1 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 3.767 GiB
Name: warmachine
ID: FICU:HLW6:7J7X:NFWJ:HX27:32U4:HQZB:I2UW:K5TI:DDAB:EBC3:F2LW
Docker Root Dir: /var/lib/docker
Debug mode (client): false
Debug mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support

2 个答案:

答案 0 :(得分:2)

这似乎是应用程序打包的问题。这是reported on their github

要排除您自己的docker安装的任何问题,您始终可以使用以下内容测试端口转发:

docker run -it --rm -p 8080:80 debian /bin/sh -c "apt-get update; apt-get install -yq netcat; nc -l -p 80"

然后在另一个终端:

nc -q 1 127.0.0.1 8080 <<EOF
hello world
EOF

如果您在docker终端上看到“hello world”,那么您的docker安装就可以了。

答案 1 :(得分:1)

在我的情况下,mysterm在mattermost启动时还没有准备好。

解决方案是将官方仓库克隆到我的本地目录&gt;进入目录&gt;修改 docker-entry.sh 文件,将行sleep 20更改为更高的值,例如100.

之后执行

docker build -t somename/mattermost . docker run --name mattermost-preview -d --publish 8065:8065 somename/mattermost

如果仍然无效,请将8065:8065部分替换为SomeRandomPort:8065,并使用其他名称为docker容器执行上一行。

感谢https://github.com/joelnb解决方案。