三种docker可视化工具(全网最详细)

这篇具有很好参考价值的文章主要介绍了三种docker可视化工具(全网最详细)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、docker UI

1.1 介绍

1.2 部署

1.2.1 拉镜像

1.2.2 启动容器

1.2.3 访问页面

1.3 使用

 1.3.1 Dashboard

 1.3.2 Containers

 1.3.3 Containers Network

 1.3.4 Images

 1.3.5 Networks

 1.3.6 Volumes

 1.3.7 Docker Information

 二、Portainer

2.1 介绍

2.2 部署

 2.2.1 拉镜像

 2.2.2 启动容器

 2.2.3 访问页面

2.3 使用

 2.3.1 Home

 2.3.2 Dashboard

 2.3.3 APP Templates

 2.3.4 Stacks

 2.3.5 Containers

 2.3.6 images

 2.3.7 Networks

 2.3.8 Volume

 2.3.9 Events

 2.3.10 Host View

 三、shipyard

3.1 介绍

3.2 部署

3.2.1 拉取镜像

3.2.2 页面访问

3.3 使用

3.3.1 容器管理

3.3.2 镜像管理

3.3.3 仓库管理

3.3.4 账户管理

3.3.5 日志事件


一、docker UI

1.1 介绍

DockerUI是一个开源的基于Docker API的web应用程序,提供等同Docker命令行的大部分功能,支持container管理,image管理。它最值得称道的是它华丽的设计和用来运行和管理docker的简洁的操作界面。

DockerUI优点:

      1)支持container批量操作;

      2)支持image管理(虽然比较薄弱)

DockerUI缺点:

      1)不支持多主机。

      2)不支持鉴权

1.2 部署

1.2.1 拉镜像

#拉镜像
docker pull uifd/ui-for-docker
#检查
[root@docker]-[~]-#docker images|grep ui
uifd/ui-for-docker                 latest                         965940f98fa5   5 years ago     8.1MB

1.2.2 启动容器

#容器启动
docker run -it -d --name docker-web -p 9090:9000 -v /var/run/docker.sock:/var/run/docker.sock docker.io/uifd/ui-for-docker
#检查
[root@docker]-[~]-#docker ps |grep web
164aaf6b30af   uifd/ui-for-docker                         "/ui-for-docker"         About an hour ago   Up About an hour   0.0.0.0:9090->9000/tcp, :::9090->9000/tcp                                              docker-web

1.2.3 访问页面

http://10.0.0.100:9090

docker可视化工具,# Docker,docker,容器,运维

 1.3 使用

1.3.1 Dashboard

显示所有容器运行情况、容器创建周期、镜像拉取周期。

docker可视化工具,# Docker,docker,容器,运维

 1.3.2 Containers

查看容器运行状态、日志情况等

docker可视化工具,# Docker,docker,容器,运维

 1.3.3 Containers Network

docker可视化工具,# Docker,docker,容器,运维

 1.3.4 Images

docker可视化工具,# Docker,docker,容器,运维

 拉取镜像:

docker可视化工具,# Docker,docker,容器,运维

 修改标签:

docker可视化工具,# Docker,docker,容器,运维

 1.3.5 Networks

docker可视化工具,# Docker,docker,容器,运维

 1.3.6 Volumes

docker可视化工具,# Docker,docker,容器,运维

 1.3.7 Docker Information

docker可视化工具,# Docker,docker,容器,运维

 二、Portainer

2.1 介绍

Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 而且完全免费,基于容器化的安装方式,方便高效部署。

官方站点:https://www.portainer.io/

2.2 部署

[root@docker]-[~/docker-ui]-#docker search portainer |head -n 3
NAME                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
portainer/portainer                    This Repo is now deprecated, use portainer/p…   2255                 
portainer/portainer-ce                 Portainer CE - a lightweight service deliver…   1314                 

2.2.1 拉镜像

#拉取镜像
[root@docker]-[~]-#docker pull portainer/portainer
#检查
[root@docker]-[~]-#docker images|grep portainer
portainer/portainer                latest                         980323c8eb3f   19 months ago   196MB

2.2.2 启动容器

#启动容器
docker run -d -p 8100:8000 -p 9100:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
#检查
[root@docker]-[~]-#docker ps|grep portainer
e6ba4145ba0a   portainer/portainer                        "/portainer"             About an hour ago   Up About an hour   0.0.0.0:8100->8000/tcp, :::8100->8000/tcp, 0.0.0.0:9100->9000/tcp, :::9100->9000/tcp   portainer

2.2.3 访问页面

http://10.0.0.100:9100(admin:${new_password})

docker可视化工具,# Docker,docker,容器,运维

 2.3 使用

2.3.1 Home

docker可视化工具,# Docker,docker,容器,运维

 添加用户:

docker可视化工具,# Docker,docker,容器,运维

 添加docker endpoints:

docker可视化工具,# Docker,docker,容器,运维

 添加registry:

docker可视化工具,# Docker,docker,容器,运维

 settings:(详细介绍点击问号即可)

docker可视化工具,# Docker,docker,容器,运维

 2.3.2 Dashboard

docker可视化工具,# Docker,docker,容器,运维

 2.3.3 APP Templates

docker可视化工具,# Docker,docker,容器,运维

自定义:

docker可视化工具,# Docker,docker,容器,运维

 2.3.4 Stacks

docker可视化工具,# Docker,docker,容器,运维

 2.3.5 Containers

可以进行启动、停止、杀掉、重启、中止、移除、添加容器等操作。 

docker可视化工具,# Docker,docker,容器,运维

创建容器: 

docker可视化工具,# Docker,docker,容器,运维

2.3.6 images

拉取镜像:

docker可视化工具,# Docker,docker,容器,运维

 查看、移除、构建、导入镜像:

docker可视化工具,# Docker,docker,容器,运维

 2.3.7 Networks

docker可视化工具,# Docker,docker,容器,运维

 2.3.8 Volumes

docker可视化工具,# Docker,docker,容器,运维

 2.3.9 Events

docker可视化工具,# Docker,docker,容器,运维

 2.3.10 Host View

docker可视化工具,# Docker,docker,容器,运维

 三、shipyard

3.1 介绍

        shipyard是docker的web可视化界面管理工具,是建立在docker集群管理工具Citadel之上,可以管理镜像、容器、主机等资源的web图形化工具,包括core和extension两个版本,core即shipyard主要是把多个 Docker host上的 containers 统一管理(支持跨越多个host),extension即shipyard-extensions添加了应用路由和负载均衡、集中化日志、部署等。Shipyard是在Docker Swarm实现对容器、镜像、docker集群、仓库、节点进行管理的web系统。

        通过Web用户界面,你可以浏览相关信息,比如你的容器在使用多少处理器和内存资源、在运行哪些容器,哪些镜像,还可以检查所有集群上的事件日志等。

其特性主要包括:

1)支持节点动态集群,可扩展节点的规模(swarm、etcd方案)

2)支持镜像管理、容器管理、节点管理等功能

3)可视化的容器管理和监控管理

4)在线连接容器console终端

3.2 部署

官网:deploy – shipyard project

3.2.1 拉取镜像

通过脚本快速拉取镜像,启动容器:

[root@docker]-[~/docker-ui]-#cat deploy 
#!/bin/bash

if [ "$1" != "" ] && [ "$1" = "-h" ]; then
    echo "Shipyard Deploy uses the following environment variables:"
    echo "  ACTION: this is the action to use (deploy, upgrade, node, remove)"
    echo "  DISCOVERY: discovery system used by Swarm (only if using 'node' action)"
    echo "  IMAGE: this overrides the default Shipyard image"
    echo "  PREFIX: prefix for container names"
    echo "  SHIPYARD_ARGS: these are passed to the Shipyard controller container as controller args"
    echo "  TLS_CERT_PATH: path to certs to enable TLS for Shipyard"
    echo "  PORT: specify the listen port for the controller (default: 8080)"
    echo "  IP: specify the address at which the controller or node will be available (default: eth0 ip)"
    echo "  PROXY_PORT: port to run docker proxy (default: 2375)"
    exit 1
fi

if [ -z "`which docker`" ]; then
    echo "You must have the Docker CLI installed on your \$PATH"
    echo "  See http://docs.docker.com for details"
    exit 1
fi

ACTION=${ACTION:-deploy}
IMAGE=${IMAGE:-dockerclub/shipyard:latest}
PREFIX=${PREFIX:-shipyard}
SHIPYARD_ARGS=${SHIPYARD_ARGS:-""}
TLS_CERT_PATH=${TLS_CERT_PATH:-}
CERT_PATH="/etc/shipyard"
PROXY_PORT=${PROXY_PORT:-2376}
SWARM_PORT=3375
SHIPYARD_PROTOCOL=http
SHIPYARD_PORT=${PORT:-8080}
SHIPYARD_IP=${IP}
DISCOVERY_BACKEND=etcd
DISCOVERY_PORT=4001
DISCOVERY_PEER_PORT=7001
ENABLE_TLS=0
CERT_FINGERPRINT=""
LOCAL_CA_CERT=""
LOCAL_SSL_CERT=""
LOCAL_SSL_KEY=""
LOCAL_SSL_CLIENT_CERT=""
LOCAL_SSL_CLIENT_KEY=""
SSL_CA_CERT=""
SSL_CERT=""
SSL_KEY=""
SSL_CLIENT_CERT=""
SSL_CLIENT_KEY=""

show_cert_help() {
    echo "To use TLS in Shipyard, you must have existing certificates."
    echo "The certs must be named ca.pem, server.pem, server-key.pem, cert.pem and key.pem"
    echo "If you need to generate certificates, see https://github.com/ehazlett/certm for examples."
}

check_certs() {
    if [ -z "$TLS_CERT_PATH" ]; then
        return
    fi

    if [ ! -e $TLS_CERT_PATH ]; then
        echo "Error: unable to find certificates in $TLS_CERT_PATH"
        show_cert_help
        exit 1
    fi

    if [ "$PROXY_PORT" = "2375" ]; then
        PROXY_PORT=2376
    fi
    SWARM_PORT=3376
    SHIPYARD_PROTOCOL=https
    LOCAL_SSL_CA_CERT="$TLS_CERT_PATH/ca.pem"
    LOCAL_SSL_CERT="$TLS_CERT_PATH/server.pem"
    LOCAL_SSL_KEY="$TLS_CERT_PATH/server-key.pem"
    LOCAL_SSL_CLIENT_CERT="$TLS_CERT_PATH/cert.pem"
    LOCAL_SSL_CLIENT_KEY="$TLS_CERT_PATH/key.pem"
    SSL_CA_CERT="$CERT_PATH/ca.pem"
    SSL_CERT="$CERT_PATH/server.pem"
    SSL_KEY="$CERT_PATH/server-key.pem"
    SSL_CLIENT_CERT="$CERT_PATH/cert.pem"
    SSL_CLIENT_KEY="$CERT_PATH/key.pem"
    CERT_FINGERPRINT=$(openssl x509 -noout -in $LOCAL_SSL_CERT -fingerprint -sha256 | awk -F= '{print $2;}')

    if [ ! -e $LOCAL_SSL_CA_CERT ] || [ ! -e $LOCAL_SSL_CERT ] || [ ! -e $LOCAL_SSL_KEY ] || [ ! -e $LOCAL_SSL_CLIENT_CERT ] || [ ! -e $LOCAL_SSL_CLIENT_KEY ]; then
        echo "Error: unable to find certificates"
        show_cert_help
        exit 1
    fi

    ENABLE_TLS=1
}

# container functions
start_certs() {
    ID=$(docker run \
        -ti \
        -d \
        --restart=always \
        --name $PREFIX-certs \
        -v $CERT_PATH \
        alpine \
        sh)
    if [ $ENABLE_TLS = 1 ]; then
        docker cp $LOCAL_SSL_CA_CERT $PREFIX-certs:$SSL_CA_CERT
        docker cp $LOCAL_SSL_CERT $PREFIX-certs:$SSL_CERT
        docker cp $LOCAL_SSL_KEY $PREFIX-certs:$SSL_KEY
        docker cp $LOCAL_SSL_CLIENT_CERT $PREFIX-certs:$SSL_CLIENT_CERT
        docker cp $LOCAL_SSL_CLIENT_KEY $PREFIX-certs:$SSL_CLIENT_KEY
    fi
}

remove_certs() {
    docker rm -fv $PREFIX-certs > /dev/null 2>&1
}

get_ip() {
    if [ -z "$SHIPYARD_IP" ]; then
        SHIPYARD_IP=`docker run --rm --net=host alpine ip route get 8.8.8.8 | awk '{ print $7;  }'`
    fi
}

start_discovery() {
    get_ip

    ID=$(docker run \
        -ti \
        -d \
        -p 4001:4001 \
        -p 7001:7001 \
        --restart=always \
        --name $PREFIX-discovery \
        microbox/etcd:latest -addr $SHIPYARD_IP:$DISCOVERY_PORT -peer-addr $SHIPYARD_IP:$DISCOVERY_PEER_PORT)
}

remove_discovery() {
    docker rm -fv $PREFIX-discovery > /dev/null 2>&1
}

start_rethinkdb() {
    ID=$(docker run \
        -ti \
        -d \
        --restart=always \
        --name $PREFIX-rethinkdb \
        rethinkdb)
}

remove_rethinkdb() {
    docker rm -fv $PREFIX-rethinkdb > /dev/null 2>&1
}

start_proxy() {
    TLS_OPTS=""
    if [ $ENABLE_TLS = 1 ]; then
        TLS_OPTS="-e SSL_CA=$SSL_CA_CERT -e SSL_CERT=$SSL_CERT -e SSL_KEY=$SSL_KEY -e SSL_SKIP_VERIFY=1"
    fi
    # Note: we add SSL_SKIP_VERIFY=1 to skip verification of the client
    # certificate in the proxy image.  this will pass it to swarm that
    # does verify.  this helps with performance and avoids certificate issues
    # when running through the proxy.  ultimately if the cert is invalid
    # swarm will fail to return.
    ID=$(docker run \
        -ti \
        -d \
        -p $PROXY_PORT:$PROXY_PORT \
        --hostname=$HOSTNAME \
        --restart=always \
        --name $PREFIX-proxy \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -e PORT=$PROXY_PORT \
        --volumes-from=$PREFIX-certs $TLS_OPTS\
        shipyard/docker-proxy:latest)
}

remove_proxy() {
    docker rm -fv $PREFIX-proxy > /dev/null 2>&1
}

start_swarm_manager() {
    get_ip

    TLS_OPTS=""
    if [ $ENABLE_TLS = 1 ]; then
        TLS_OPTS="--tlsverify --tlscacert=$SSL_CA_CERT --tlscert=$SSL_CERT --tlskey=$SSL_KEY"
    fi

    EXTRA_RUN_OPTS=""

    if [ -z "$DISCOVERY" ]; then
        DISCOVERY="$DISCOVERY_BACKEND://discovery:$DISCOVERY_PORT"
        EXTRA_RUN_OPTS="--link $PREFIX-discovery:discovery"
    fi
    ID=$(docker run \
        -ti \
        -d \
        --restart=always \
        --name $PREFIX-swarm-manager \
        --volumes-from=$PREFIX-certs $EXTRA_RUN_OPTS \
        swarm:latest \
        m --replication --addr $SHIPYARD_IP:$SWARM_PORT --host tcp://0.0.0.0:$SWARM_PORT $TLS_OPTS $DISCOVERY)
}

remove_swarm_manager() {
    docker rm -fv $PREFIX-swarm-manager > /dev/null 2>&1
}

start_swarm_agent() {
    get_ip

    if [ -z "$DISCOVERY" ]; then
        DISCOVERY="$DISCOVERY_BACKEND://discovery:$DISCOVERY_PORT"
        EXTRA_RUN_OPTS="--link $PREFIX-discovery:discovery"
    fi
    ID=$(docker run \
        -ti \
        -d \
        --restart=always \
        --name $PREFIX-swarm-agent $EXTRA_RUN_OPTS \
        swarm:latest \
        j --addr $SHIPYARD_IP:$PROXY_PORT $DISCOVERY)
}

remove_swarm_agent() {
    docker rm -fv $PREFIX-swarm-agent > /dev/null 2>&1
}

start_controller() {
    #-v $CERT_PATH:/etc/docker:ro \
    TLS_OPTS=""
    if [ $ENABLE_TLS = 1 ]; then
        TLS_OPTS="--tls-ca-cert $SSL_CA_CERT --tls-cert=$SSL_CERT --tls-key=$SSL_KEY --shipyard-tls-ca-cert=$SSL_CA_CERT --shipyard-tls-cert=$SSL_CERT --shipyard-tls-key=$SSL_KEY"
    fi

    ID=$(docker run \
        -ti \
        -d \
        --restart=always \
        --name $PREFIX-controller \
        --link $PREFIX-rethinkdb:rethinkdb \
        --link $PREFIX-swarm-manager:swarm \
        -p $SHIPYARD_PORT:$SHIPYARD_PORT \
        --volumes-from=$PREFIX-certs \
        $IMAGE \
        --debug \
        server \
        --listen :$SHIPYARD_PORT \
        -d tcp://swarm:$SWARM_PORT $TLS_OPTS $SHIPYARD_ARGS)
}

wait_for_available() {
    set +e 
    IP=$1
    PORT=$2
    echo Waiting for Shipyard on $IP:$PORT

    docker pull ehazlett/curl > /dev/null 2>&1

    TLS_OPTS=""
    if [ $ENABLE_TLS = 1 ]; then
        TLS_OPTS="-k"
    fi

    until $(docker run --rm ehazlett/curl --output /dev/null --connect-timeout 1 --silent --head --fail $TLS_OPTS $SHIPYARD_PROTOCOL://$IP:$PORT/ > /dev/null 2>&1); do
        printf '.'
        sleep 1 
    done
    printf '\n'
}

remove_controller() {
    docker rm -fv $PREFIX-controller > /dev/null 2>&1
}

if [ "$ACTION" = "deploy" ]; then
    set -e

    check_certs

    get_ip 

    echo "Deploying Shipyard"
    echo " -> Starting Database"
    start_rethinkdb
    echo " -> Starting Discovery"
    start_discovery
    echo " -> Starting Cert Volume"
    start_certs
    echo " -> Starting Proxy"
    start_proxy
    echo " -> Starting Swarm Manager"
    start_swarm_manager
    echo " -> Starting Swarm Agent"
    start_swarm_agent
    echo " -> Starting Controller"
    start_controller

    wait_for_available $SHIPYARD_IP $SHIPYARD_PORT

    echo "Shipyard available at $SHIPYARD_PROTOCOL://$SHIPYARD_IP:$SHIPYARD_PORT"
    if [ $ENABLE_TLS = 1 ] && [ ! -z "$CERT_FINGERPRINT" ]; then
        echo "SSL SHA-256 Fingerprint: $CERT_FINGERPRINT"
    fi
    echo "Username: admin Password: shipyard"

elif [ "$ACTION" = "node" ]; then
    set -e

    if [ -z "$DISCOVERY" ]; then
        echo "You must set the DISCOVERY environment variable"
        echo "with the discovery system used with Swarm"
        exit 1
    fi

    check_certs

    echo "Adding Node"
    echo " -> Starting Cert Volume"
    start_certs
    echo " -> Starting Proxy"
    start_proxy
    echo " -> Starting Swarm Manager"
    start_swarm_manager $DISCOVERY
    echo " -> Starting Swarm Agent"
    start_swarm_agent

    echo "Node added to Swarm: $SHIPYARD_IP"
    
elif [ "$ACTION" = "upgrade" ]; then
    set -e

    check_certs

    get_ip

    echo "Upgrading Shipyard"
    echo " -> Pulling $IMAGE"
    docker pull $IMAGE

    echo " -> Upgrading Controller"
    remove_controller
    start_controller

    wait_for_available $SHIPYARD_IP $SHIPYARD_PORT

    echo "Shipyard controller updated"

elif [ "$ACTION" = "remove" ]; then
    # ignore errors
    set +e

    echo "Removing Shipyard"
    echo " -> Removing Database"
    remove_rethinkdb
    echo " -> Removing Discovery"
    remove_discovery
    echo " -> Removing Cert Volume"
    remove_certs
    echo " -> Removing Proxy"
    remove_proxy
    echo " -> Removing Swarm Agent"
    remove_swarm_agent
    echo " -> Removing Swarm Manager"
    remove_swarm_manager
    echo " -> Removing Controller"
    remove_controller

    echo "Done"
else
    echo "Unknown action $ACTION"
    exit 1
fi

 执行脚本:

[root@docker]-[~/docker-ui]-#./deploy 
Unable to find image 'alpine:latest' locally
latest: Pulling from library/alpine
213ec9aee27d: Pulling fs layer
213ec9aee27d: Verifying Checksum
213ec9aee27d: Download complete
213ec9aee27d: Pull complete
Digest: sha256:bc41182d7ef5ffc53a40b044e725193bc10142a1243f395ee852a8d9730fc2ad
Status: Downloaded newer image for alpine:latest
Deploying Shipyard
 -> Starting Database
Unable to find image 'rethinkdb:latest' locally
latest: Pulling from library/rethinkdb
7a6db449b51b: Pulling fs layer
20181367ea9b: Pulling fs layer
d4c59a6fbe9d: Pulling fs layer
54db2c71fcb0: Pulling fs layer
1e96e4039912: Pulling fs layer
54db2c71fcb0: Waiting
1e96e4039912: Waiting
d4c59a6fbe9d: Verifying Checksum
d4c59a6fbe9d: Download complete
20181367ea9b: Verifying Checksum
20181367ea9b: Download complete
1e96e4039912: Download complete
7a6db449b51b: Download complete
7a6db449b51b: Pull complete
20181367ea9b: Pull complete
d4c59a6fbe9d: Pull complete
54db2c71fcb0: Verifying Checksum
54db2c71fcb0: Download complete
54db2c71fcb0: Pull complete
1e96e4039912: Pull complete
Digest: sha256:bc30f504fc823240c64552a7983b6da55d83dd0966ab17cab12c5fb9e45576ce
Status: Downloaded newer image for rethinkdb:latest
 -> Starting Discovery
Unable to find image 'microbox/etcd:latest' locally
latest: Pulling from microbox/etcd
Image docker.io/microbox/etcd:latest uses outdated schema1 manifest format. Please upgrade to a schema2 image for better future compatibility. More information at https://docs.docker.com/registry/spec/deprecated-schema-v1/
8ded6e8ab3fd: Pulling fs layer
bf8f85223d7a: Pulling fs layer
a3ed95caeb02: Pulling fs layer
a3ed95caeb02: Verifying Checksum
a3ed95caeb02: Download complete
bf8f85223d7a: Verifying Checksum
bf8f85223d7a: Download complete
8ded6e8ab3fd: Verifying Checksum
8ded6e8ab3fd: Download complete
8ded6e8ab3fd: Pull complete
bf8f85223d7a: Pull complete
a3ed95caeb02: Pull complete
Digest: sha256:941fd46b4eab265c65da9bfbf33397b853a7cef6c16df93a1e3fea7b4e47fc90
Status: Downloaded newer image for microbox/etcd:latest
 -> Starting Cert Volume
 -> Starting Proxy
Unable to find image 'shipyard/docker-proxy:latest' locally
latest: Pulling from shipyard/docker-proxy
Image docker.io/shipyard/docker-proxy:latest uses outdated schema1 manifest format. Please upgrade to a schema2 image for better future compatibility. More information at https://docs.docker.com/registry/spec/deprecated-schema-v1/
8f4ec95ceaee: Pulling fs layer
ac77a345f217: Pulling fs layer
43039e3ef672: Pulling fs layer
a3ed95caeb02: Pulling fs layer
a3ed95caeb02: Waiting
8f4ec95ceaee: Download complete
8f4ec95ceaee: Pull complete
ac77a345f217: Verifying Checksum
ac77a345f217: Download complete
ac77a345f217: Pull complete
a3ed95caeb02: Verifying Checksum
a3ed95caeb02: Download complete
43039e3ef672: Verifying Checksum
43039e3ef672: Download complete
43039e3ef672: Pull complete
a3ed95caeb02: Pull complete
Digest: sha256:da6bbd1a145581a940d44940cce0f43705d7f8ec552a4e97e77104ec1b6dc3d1
Status: Downloaded newer image for shipyard/docker-proxy:latest
 -> Starting Swarm Manager
Unable to find image 'swarm:latest' locally
latest: Pulling from library/swarm
38e5683d7755: Pulling fs layer
083aff163606: Pulling fs layer
2064f1a73c6b: Pulling fs layer
083aff163606: Verifying Checksum
083aff163606: Download complete
2064f1a73c6b: Verifying Checksum
2064f1a73c6b: Download complete
38e5683d7755: Verifying Checksum
38e5683d7755: Download complete
38e5683d7755: Pull complete
083aff163606: Pull complete
2064f1a73c6b: Pull complete
Digest: sha256:2de8883e2933840ed7ee7360ea1eed314bf8aeac37c0692b9ca651630fde3b7f
Status: Downloaded newer image for swarm:latest
 -> Starting Swarm Agent
 -> Starting Controller
Unable to find image 'dockerclub/shipyard:latest' locally
latest: Pulling from dockerclub/shipyard
Image docker.io/dockerclub/shipyard:latest uses outdated schema1 manifest format. Please upgrade to a schema2 image for better future compatibility. More information at https://docs.docker.com/registry/spec/deprecated-schema-v1/
4d06f2521e4f: Pulling fs layer
64100628847a: Pulling fs layer
36a170440d6d: Pulling fs layer
a823ae228c2d: Pulling fs layer
a3ed95caeb02: Pulling fs layer
a823ae228c2d: Waiting
a3ed95caeb02: Waiting
4d06f2521e4f: Verifying Checksum
4d06f2521e4f: Download complete
4d06f2521e4f: Pull complete
36a170440d6d: Verifying Checksum
36a170440d6d: Download complete
a3ed95caeb02: Verifying Checksum
a3ed95caeb02: Download complete
64100628847a: Verifying Checksum
64100628847a: Download complete
64100628847a: Pull complete
36a170440d6d: Pull complete
a823ae228c2d: Verifying Checksum
a823ae228c2d: Download complete
a823ae228c2d: Pull complete
a3ed95caeb02: Pull complete
Digest: sha256:bd5ac58c556506012f7788db18fc6fed3bcefb294e469babbeb87ad7ef15e219
Status: Downloaded newer image for dockerclub/shipyard:latest
Waiting for Shipyard on 10.0.0.100:8080
........................................
Shipyard available at http://10.0.0.100:8080
Username: admin Password: shipyard

容器介绍:

[root@docker]-[~/docker-ui]-#docker ps
CONTAINER ID   IMAGE                                      COMMAND                  CREATED             STATUS             PORTS                                                                                  NAMES
2308552f63a9   dockerclub/shipyard:latest                 "/bin/controller --d…"   About an hour ago   Up About an hour   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp                                              shipyard-controller
1676327a4e5a   swarm:latest                               "/swarm j --addr 10.…"   About an hour ago   Up About an hour   2375/tcp                                                                               shipyard-swarm-agent
2f368d9f81df   swarm:latest                               "/swarm m --replicat…"   About an hour ago   Up About an hour   2375/tcp                                                                               shipyard-swarm-manager
c38108f757c5   shipyard/docker-proxy:latest               "/usr/local/bin/run"     About an hour ago   Up About an hour   2375/tcp, 0.0.0.0:2376->2376/tcp, :::2376->2376/tcp                                    shipyard-proxy
e610645dfe8e   alpine                                     "sh"                     About an hour ago   Up About an hour                                                                                          shipyard-certs
c444c7df39f4   microbox/etcd:latest                       "/bin/etcd -addr 10.…"   About an hour ago   Up About an hour   0.0.0.0:4001->4001/tcp, :::4001->4001/tcp, 0.0.0.0:7001->7001/tcp, :::7001->7001/tcp   shipyard-discovery
307b4cec4659   rethinkdb                                  "rethinkdb --bind all"   About an hour ago   Up About an hour   8080/tcp, 28015/tcp, 29015/tcp                                                         shipyard-rethinkdb

----------------------------------------------------------------------------------------
1)RethinkDB
deploy首先启动的就是RethinkDB容器,shipyard采用RethinkDB作为数据库来保存用户等信息
2)Discovery
为了使用Swarm,我们需要一个外部的密钥值存储群容器,shipyard默认是采用了etcd。
3)shipyard_certs
证书管理容器,实现证书验证功能
4)Proxy
默认情况下,Docker引擎只监听Socket,我们可以重新配置引擎使用TLS或者使用一个代理容器,转发请求从TCP到Docker监听的UNIX Socket。
5)Swarm Manager
Swarm管理器
6)Swarm Agent
Swarm代理,运行在每个节点上。
7)Controller
shipyard控制器,Remote API的实现和web的实现。

3.2.2 页面访问

访问地址:http://10.0.0.100:8080

登录用户名/密码:admin/shipyard

docker可视化工具,# Docker,docker,容器,运维

 3.3 使用

3.3.1 容器管理

docker可视化工具,# Docker,docker,容器,运维

 部署容器:

docker可视化工具,# Docker,docker,容器,运维

 操作容器:

docker可视化工具,# Docker,docker,容器,运维

 3.3.2 镜像管理

docker可视化工具,# Docker,docker,容器,运维

 下载镜像:

docker可视化工具,# Docker,docker,容器,运维

 3.3.3 仓库管理

docker可视化工具,# Docker,docker,容器,运维

 添加仓库:

docker可视化工具,# Docker,docker,容器,运维

3.3.4 账户管理

docker可视化工具,# Docker,docker,容器,运维

 新增账户:

docker可视化工具,# Docker,docker,容器,运维

 3.3.5 日志事件

docker可视化工具,# Docker,docker,容器,运维文章来源地址https://www.toymoban.com/news/detail-789702.html

到了这里,关于三种docker可视化工具(全网最详细)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker可视化工具——Portainer

    目录 Portainer 登录 Portainer 通过命令安装 Portainer 1.通过本地浏览器访问:http://服务器公网IP:9000, 直接进入 Portainer 界面 2.设置管理员账号密码,点击【Create user】 3.选择【Local】作为镜像连接选项,然后点击【Connect】 4.进入Portainer后台管理界面,点击Local项目就可以开始使用

    2024年02月02日
    浏览(35)
  • docker可视化工具Portainer

    1:Portainer简介 Portainer是一个docker可视化管理工具,可以非常方便地管理docker镜像容器。官网地址:https://www.portainer.io/ 注:现在Portainer有BE(收费)和CE(免费)版本,安装的时候自行决定,建议根据官方文档走,不要用最新的因为不稳定,英文的文档阅读吃力可以翻译成中文

    2024年02月12日
    浏览(34)
  • FAST OS DOCKER 可视化Docker管理工具

    介绍 FAST OS DOCKER 界面直观、简洁,非常适合新手使用,方便大家轻松上手 docker部署运行各类有趣的容器应用,同时 FAST OS DOCKER 为防止服务器负载过高,进行了底层性能优化;其以服务器安全为基础,对其进行权限管理,因此安全性极高;为方便用户安装,集成了docker镜像,

    2024年02月01日
    浏览(77)
  • 【docker 可视化管理工具-DockerUI】

    DockerUI 是一款开源的、强大的、轻量级的Docker管理工具。DockerUI覆盖了 docker cli 命令行 95% 以上的命令功能,通过可视化的界面,即使是不熟悉docker命令的用户也可以非常方便的进行Docker和Docker Swarm集群进行管理和维护。DockerUI后端使用Go语言开发,前台框架使用CubeUI。通过D

    2024年02月02日
    浏览(71)
  • 可视化Docker管理工具『Portainer』

    官方版本默认为英文,文章后方为中文版本安装。仅供参考。        使用web 管理界面来操作 docker,这样只需要鼠标点击就可以,有人肯定也用过 Portainer 这款工具,界面非常美观功能也非常全。 Portainer 是一个易用且轻量化的 Docker 管理介面,透过 Web 界面的操作,更方便对

    2024年02月13日
    浏览(66)
  • Docker可视化管理工具DockerUI

    什么是 DockerUI ? DockerUI 是一款开源的、强大的、轻量级的 Docker 管理工具。 DockerUI 覆盖了 docker cli 命令行 95% 以上的命令功能,通过可视化的 Web 界面操作,可以非常方便、轻松进行 docker 环境和 docker swarm 集群环境的管理和维护功能,方便不熟悉 docker 指令的用户更快地进入

    2024年04月14日
    浏览(81)
  • docker 笔记10:Docker轻量级可视化工具Portainer

    Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境。  https://docs.portainer.io/v/ce-2.9/start/install/server/docker/linux 步骤  docker命令安装  第一次登录需创建admin,访问地址:xxx.xxx.xxx.xxx:9000 用户名,直接用默认admin 密码记得8位,

    2024年02月09日
    浏览(54)
  • Docker轻量级可视化工具Portainer

    掌握Portainer的部署和使用。现在是web,命令端看容器,镜像--------》》web端管理容器,镜像。-------------------就是把命令封装成web Portainer 是一款轻量级的应用, 它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境。 Portainer(https://www.portainer.io/)是一个

    2024年02月13日
    浏览(61)
  • Docker 轻量级可视化工具Portainer

    Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境。 2.1 官网 https://www.protainer.io/ https://docs.portainer.io/ce-2.9/start/install/server/docker/linux 2.2 步骤 2.2.1 docker命令安装 docker run -d -p 8000:8000 -p 9000:9000 --name portainer     --restart=al

    2024年02月10日
    浏览(59)
  • 【打工日常】使用docker部署可视化工具docker-ui

           docker-ui是一个易用且轻量化的Docker管理工具,透过Web界面的操作,方便快捷操作docker容器化工作。        docker-ui拥有易操作化化界面,不须记忆docker指令,仅需下载镜像即可立刻加入完成部署。基于docker的特性,于docker-ui中可以直接更新镜像的版本,使用相同的设

    2024年02月19日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包