【2022世界杯开源项目实战】使用docker部署world-cup-2022-cli-dashboard数据看板工具
- 一、world-cup-2022-cli-dashboard介绍
- 1.工具介绍
- 2.数据看板的内容
- 二、检查本地docker环境
- 1.检查docker版本
- 2.检查docker状态
- 三、构建world-cup-2022-cli-dashboard的镜像
- 1.下载world-cup-2022-cli-dashboard源码
- 2.直接构建镜像
- 3.构建镜像时指定镜像名称
- 4.查看world-cup-2022-cli-dashboard镜像
- 四、运行world-cup-2022-cli-dashboard容器
- 五、创建world-cup-2022-cli-dashboard工具
- 1.将world-cup-2022-cli-dashboard容器设置别名
- 2.查看系统别名
- 六、使用world-cup-2022-cli-dashboard工具
- 1.运行world-cup-2022-cli-dashboard的临时容器
- 2.切换比赛
一、world-cup-2022-cli-dashboard介绍
1.工具介绍
world-cup-2022-cli-dashboard是一款2022 年世界杯 CLI 仪表板工具。可通过这个看板获取相关世界杯比赛详细信息。
2.数据看板的内容
⚽现场比赛(进球、预订、换人)
️球队阵容
预定和过去的比赛
榜
二、检查本地docker环境
1.检查docker版本
[root@ecs-ff75 worldcup]# docker versionClient: Docker Engine - Community Version: 20.10.21 API version: 1.41 Go version: go1.18.7 Git commit: baeda1f Built: Tue Oct 25 18:04:24 2022 OS/Arch: linux/amd64 Context: default Experimental: trueServer: Docker Engine - Community Engine: Version: 20.10.21 API version: 1.41 (minimum version 1.12) Go version: go1.18.7 Git commit: 3056208 Built: Tue Oct 25 18:02:38 2022 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.6.10 GitCommit: 770bd0108c32f3fb5c73ae1264f7e503fe7b2661 runc: Version: 1.1.4 GitCommit: v1.1.4-0-g5fd4c4d docker-init: Version: 0.19.0 GitCommit: de40ad0
2.检查docker状态
[root@ecs-ff75 worldcup]# systemctl status docker● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2022-12-03 00:31:49 CST; 21min ago Docs: https://docs.docker.com Main PID: 8283 (dockerd) Tasks: 9 Memory: 464.6M CGroup: /system.slice/docker.service └─8283 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sockDec 03 00:31:49 ecs-ff75 dockerd[8283]: time="2022-12-03T00:31:49.881153099+08:00" level=info msg="Daemon has completed initialization"Dec 03 00:31:49 ecs-ff75 systemd[1]: Started Docker Application Container Engine.Dec 03 00:31:49 ecs-ff75 dockerd[8283]: time="2022-12-03T00:31:49.909840654+08:00" level=info msg="API listen on /var/run/docker.sock"Dec 03 00:33:40 ecs-ff75 dockerd[8283]: time="2022-12-03T00:33:40.907384993+08:00" level=info msg="Layer sha256:38a9ab4169808f74248d152a73b8dc2441d50d8...leaned up"Dec 03 00:33:41 ecs-ff75 dockerd[8283]: time="2022-12-03T00:33:41.025072845+08:00" level=info msg="Layer sha256:38a9ab4169808f74248d152a73b8dc2441d50d8...leaned up"Dec 03 00:33:48 ecs-ff75 dockerd[8283]: time="2022-12-03T00:33:48.545709116+08:00" level=info msg="ignoring event" container=fc9f70b878e60a809971445741...askDelete"Dec 03 00:33:49 ecs-ff75 dockerd[8283]: time="2022-12-03T00:33:49.200137067+08:00" level=info msg="Layer sha256:c0ab059db9d82cb1a277976e4b0b5c729ab7df6...leaned up"Dec 03 00:36:27 ecs-ff75 dockerd[8283]: time="2022-12-03T00:36:27.309079392+08:00" level=info msg="ignoring event" container=01e7d89b56f4e8fdd2246d96ef...askDelete"Dec 03 00:49:08 ecs-ff75 dockerd[8283]: time="2022-12-03T00:49:08.153074321+08:00" level=info msg="ignoring event" container=a634f6293cc5fd92d115eefd09...askDelete"Dec 03 00:52:49 ecs-ff75 dockerd[8283]: time="2022-12-03T00:52:49.917432199+08:00" level=info msg="ignoring event" container=8e3883a46406c42797680b7b52...askDelete"Hint: Some lines were ellipsized, use -l to show in full.
三、构建world-cup-2022-cli-dashboard的镜像
1.下载world-cup-2022-cli-dashboard源码
[root@ecs-ff75 worldcup]# git clone https://github.com/cedricblondeau/world-cup-2022-cli-dashboard.gitCloning into 'world-cup-2022-cli-dashboard'...remote: Enumerating objects: 286, done.remote: Counting objects: 100% (70/70), done.remote: Compressing objects: 100% (50/50), done.remote: Total 286 (delta 30), reused 38 (delta 17), pack-reused 216Receiving objects: 100% (286/286), 1.71 MiB | 0 bytes/s, done.Resolving deltas: 100% (130/130), done.[root@ecs-ff75 worldcup]# lsworld-cup-2022-cli-dashboard
2.直接构建镜像
[root@ecs-ff75 worldcup]# docker build world-cup-2022-cli-dashboardSending build context to Docker daemon 3.192MBStep 1/5 : FROM golang:1.19-alpine1.19-alpine: Pulling from library/golangc158987b0551: Pull complete 019cfb932eb0: Pull complete 4deb04624f23: Pull complete 1400322eb6d1: Pull complete Digest: sha256:8bd8a4b55b233ea77a81250f83637553ef9e3348c5a0cc3ce440c5d45bf7d51dStatus: Downloaded newer image for golang:1.19-alpine ---> c17d5d410602Step 2/5 : ENV TERM xterm-256color ---> Running in b6b16092f715Removing intermediate container b6b16092f715 ---> 58cab8848820Step 3/5 : ENV COLORTERM truecolor ---> Running in 5229d2ed04b2Removing intermediate container 5229d2ed04b2 ---> 101006beeb08Step 4/5 : RUN go install github.com/cedricblondeau/world-cup-2022-cli-dashboard@latest ---> Running in fc9f70b878e6go: downloading github.com/cedricblondeau/world-cup-2022-cli-dashboard v1.2.1go: downloading github.com/charmbracelet/bubbletea v0.23.1go: downloading github.com/charmbracelet/bubbles v0.14.0go: downloading github.com/charmbracelet/lipgloss v0.6.0go: downloading github.com/containerd/console v1.0.3go: downloading github.com/mattn/go-isatty v0.0.16go: downloading github.com/mattn/go-localereader v0.0.1go: downloading github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4bgo: downloading github.com/muesli/cancelreader v0.2.2go: downloading github.com/muesli/reflow v0.3.0go: downloading github.com/muesli/termenv v0.13.0go: downloading golang.org/x/term v0.0.0-20210927222741-03fcf44c2211go: downloading github.com/mattn/go-runewidth v0.0.14go: downloading golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398abgo: downloading github.com/rivo/uniseg v0.2.0go: downloading github.com/aymanbagabas/go-osc52 v1.0.3go: downloading github.com/lucasb-eyer/go-colorful v1.2.0Removing intermediate container fc9f70b878e6 ---> 444bf96ddcc5Step 5/5 : ENTRYPOINT world-cup-2022-cli-dashboard ---> Running in 178e01b73eaaRemoving intermediate container 178e01b73eaa ---> 0b4224ef9737Successfully built 0b4224ef9737
3.构建镜像时指定镜像名称
[root@ecs-ff75 worldcup]# docker build world-cup-2022-cli-dashboard -t world-cup-2022-cli-dashboardSending build context to Docker daemon 3.192MBStep 1/5 : FROM golang:1.19-alpine ---> c17d5d410602Step 2/5 : ENV TERM xterm-256color ---> Using cache ---> 58cab8848820Step 3/5 : ENV COLORTERM truecolor ---> Using cache ---> 101006beeb08Step 4/5 : RUN go install github.com/cedricblondeau/world-cup-2022-cli-dashboard@latest ---> Using cache ---> 444bf96ddcc5Step 5/5 : ENTRYPOINT world-cup-2022-cli-dashboard ---> Using cache ---> 0b4224ef9737Successfully built 0b4224ef9737Successfully tagged world-cup-2022-cli-dashboard:latest
4.查看world-cup-2022-cli-dashboard镜像
[root@ecs-ff75 worldcup]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEworld-cup-2022-cli-dashboard latest 0b4224ef9737 5 minutes ago 391MBgolang 1.19-alpine c17d5d410602 20 hours ago 354MB
四、运行world-cup-2022-cli-dashboard容器
运行world-cup-2022-cli-dashboard容器,快速进行cli-dashboard的界面。
[root@ecs-ff75 worldcup]# docker run -ti -e TZ=Asia/Shanghai world-cup-2022-cli-dashboard
五、创建world-cup-2022-cli-dashboard工具
1.将world-cup-2022-cli-dashboard容器设置别名
[root@ecs-ff75 worldcup]# alias worldcup='docker run -it --rm -e TZ=America/Toronto world-cup-2022-cli-dashboard'[root@ecs-ff75 worldcup]#
2.查看系统别名
[root@ecs-ff75 worldcup]# alias worldcup='docker run -it --rm -e TZ=America/Toronto world-cup-2022-cli-dashboard'[root@ecs-ff75 worldcup]# aliasalias cp='cp -i'alias egrep='egrep --color=auto'alias fgrep='fgrep --color=auto'alias grep='grep --color=auto'alias l.='ls -d .* --color=auto'alias ll='ls -l --color=auto'alias ls='ls --color=auto'alias mv='mv -i'alias rm='rm -i'alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'alias worldcup='docker run -it --rm -e TZ=America/Toronto world-cup-2022-cli-dashboard'
六、使用world-cup-2022-cli-dashboard工具
1.运行world-cup-2022-cli-dashboard的临时容器
worldcup
2.切换比赛