docker安装nginx、MySQL、jdk、自定义镜像、图形化界面

docker安装nginx

# 第1步,去DockerHub查看nginx镜像仓库及相关信息

# 第2步,拉取Nginx镜像
docker pull dp

# 第3步,查看镜像
docker images
# 结果如下:
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
nginx        latest    605c77e624dd   16 months ago   141MB
mysql        latest    3218b38490ce   17 months ago   516MB

# 第4步,创建并允许Nginx容器
docker run -d --name nginx -p 80:80 nginx

# 第5步,查看运行中容器
docker ps
# 也可以加格式化方式访问,格式会更加清爽
docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"

# 第6步,访问网页,地址:http://虚拟机地址

# 第7步,停止容器
docker stop nginx

# 第8步,查看所有容器
docker ps -a --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"

# 第9步,再次启动nginx容器
docker start nginx

# 第10步,再次查看容器
docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"

# 第11步,查看容器详细信息
docker inspect nginx

# 第12步,进入容器,查看容器内目录
docker exec -it nginx bash
# 或者,可以进入MySQL
docker exec -it mysql mysql -uroot -p

# 第13步,删除容器
docker rm nginx
# 发现无法删除,因为容器运行中,强制删除容器
docker rm -f nginx





docker run -d \
  --name nginx \
  -p 80:80 \
  -p 18080:18080 \
  -p 18081:18081 \
  -v /root/nginx/html:/usr/share/nginx/html \
  -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \
  --network hm-net \
  nginx
  
  
  docker run -d \
  --name nginx \
  -p 18080:18080 \
  -p 18081:18081 \
  -v /root/nginx/html:/usr/share/nginx/html \
  -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \
  --network hmall \
  nginx

在这里插入图片描述

docker安装MySQL

1、在课前资料提供好了MySQL的一个目录:

在这里插入图片描述

2、其中有MySQL的配置文件和初始化脚本:

在这里插入图片描述

3、我们将其复制到虚拟机的/root目录。如果/root下已经存在mysql目录则删除旧的,如果不存在则直接复制本地的:

在这里插入图片描述

4、然后创建一个通用网络:

docker network create hanxue-net

5、使用下面的命令来安装MySQL:

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -v /root/mysql/data:/var/lib/mysql \
  -v /root/mysql/conf:/etc/mysql/conf.d \
  -v /root/mysql/init:/docker-entrypoint-initdb.d \
  --network hm-net\
  mysql

MySQL的客户端工具连接MySQL

在这里插入图片描述

6、解决客户端问题:

在这里插入图片描述

[client]
default_character_set=utf8mb4
[mysql]
default_character_set=utf8mb4
get-server-public-key   #添加公钥
[mysqld]
character_set_server=utf8mb4
collation_server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

在这里插入图片描述


[root@localhost ~]# ls
anaconda-ks.cfg  mysql  nacos  nacos.tar  nginx.tar  uO?ٱ??  uO?ٱ???
[root@localhost ~]# cd mysql/
[root@localhost mysql]# ls
conf  data  init
[root@localhost mysql]# cd conf/
[root@localhost conf]# ls
hm.cnf
[root@localhost conf]# cat hm.cnf
[client]
default_character_set=utf8mb4
[mysql]
default_character_set=utf8mb4
get-server-public-key
[mysqld]
character_set_server=utf8mb4
collation_server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
[root@localhost conf]# ls
hm.cnf
[root@localhost conf]#

1、docker安装jdk

在这里插入图片描述

[root@localhost ~]# docker load -i jdk.tar

2c7e7ab2260a: Loading layer [==================================================>]  119.3MB/119.3MB
9ad2165feb02: Loading layer [==================================================>]  17.18MB/17.18MB
92903c3857f8: Loading layer [==================================================>]  17.87MB/17.87MB
1736ab871b32: Loading layer [==================================================>]  12.18MB/12.18MB
6f8e4cb95a88: Loading layer [==================================================>]  3.584kB/3.584kB
41080a0c646f: Loading layer [==================================================>]  141.8MB/141.8MB
Loaded image: openjdk:11.0-jre-buster
[root@localhost ~]# docker images
REPOSITORY           TAG               IMAGE ID       CREATED         SIZE
nacos/nacos-server   v2.1.0-slim       49addbd025a1   19 months ago   322MB
nginx                latest            605c77e624dd   23 months ago   141MB
mysql                latest            3218b38490ce   23 months ago   516MB
openjdk              11.0-jre-buster   57925f2e4cff   24 months ago   301MB


2、docker自定义镜像

#构建镜像  docker build -t 镜像名 Dockerfile所在目录
[root@localhost ~]# docker build -t docker-demo .

在这里插入图片描述
在这里插入图片描述

3、运行自定义镜像

[root@localhost demo]# docker run -d --name hm -p 8080:8080 docker-demo
#dd 日志
[root@localhost demo]# docker logs -f dd   #查看日志

在这里插入图片描述

在这里插入图片描述

#创建一个网络
docker network create  
#查看所有网络
docker network ls
#删除指定网络
docker network rm
#清除未使用的网络
docker network prune
#使指定容器连接加入某网络
docker network connect
#使指定容器连接离开某网络
docker network disconnect
#查看网络详细信息
docker network inspect

docker安装图形化界面

1. 搜索portainer镜像

docker search portainer

在这里插入图片描述

2.拉取portainer镜像

docker pull portainer/portainer-ce

在这里插入图片描述

3. 启动portainer容器

# 启动镜像
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /dockerData/portainer:/data --restart=always --name portainer portainer/portainer-ce:latest
  • p: 指定宿主机端口和容器端口 portainer默认端口是9000

  • v: 目录映射,将/var/run/docker.sock映射到容器中,用于访问Docker的守护进程,控制Docker。/dockerData/portainer保存Portainer的配置信息。

–restart=always: 代表在容器退出时总是重启容器,还有其他几种重启策略:no、on-failure、on-failuer:n、unless-stopped
在这里插入图片描述

- -p 1126:9000 端口映射默认为9000,映射为1126
- portainer 镜像名字

4. docker ps查看容器

在这里插入图片描述

-p 9000:9000 端口映射默认为9000,映射为9000
portainer/portainer 镜像名字

# 查看日志

docker logs -f portainer

5.启动完成后,访问http://ip:9000

首次登录,需要你创建管理员admin的密码,设置后登录

在这里插入图片描述

二次登录时 admin 1234578

在这里插入图片描述
在这里插入图片描述

docker部署docker.ui工具

docker.ui介绍

1.docker.ui简介

​ DockerUI是一个易用且轻量化的 Docker 管理工具,透过 Web 界面的操作,更方便对于 Docker 指令不熟悉的用户更容易操作 Docker 。

2.docker.ui功能

  • Docker主机管理:数据卷管理,镜像管理,容器管理,构建管理,仓库配置管理,网络配置管理
  • Docker Swarm集群管理:集群概要信息,节点管理,Service管理,任务管理,密码管理,配置管理

3.检查本地docker环境


[root@localhost ~]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
[root@localhost ~]#

4.检查docker版本


[root@localhost ~]# docker version
Client: Docker Engine - Community
 Version:           24.0.7
 API version:       1.43
 Go version:        go1.20.10
 Git commit:        afdd53b
 Built:             Thu Oct 26 09:11:35 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          24.0.7
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.10
  Git commit:       311b9ff
  Built:            Thu Oct 26 09:10:36 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.24
  GitCommit:        61f9fd88f79f081d64d6fa3bb1a0dc71ec870523
 runc:
  Version:          1.1.9
  GitCommit:        v1.1.9-0-gccaecfc
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
[root@localhost ~]#

5.下载docker.ui镜像

从dockerhub拉取docker.ui镜像,版本选择1.0.1,也可以选择最新版本latest。

docker pull joinsunsoft/docker.ui:1.0.1

[root@localhost ~]# docker pull joinsunsoft/docker.ui:1.0.1
1.0.1: Pulling from joinsunsoft/docker.ui
213ec9aee27d: Pull complete
362df81e5664: Pull complete
c3f864fca442: Pull complete
5a55080a5af0: Pull complete
497ed8376dfb: Pull complete
4642bc86bdfb: Pull complete
af43397a88d3: Pull complete
Digest: sha256:1b70b86be661e931e112d8b59850eeac927966679c52b46064d67df2c489d7a5
Status: Downloaded newer image for joinsunsoft/docker.ui:1.0.1
docker.io/joinsunsoft/docker.ui:1.0.1
[root@localhost ~]#

6.部署docker.ui工具

6.1.创建docker.ui容器

使用docker 的cli命令直接创建docker.ui容器。

docker run -d --name docker.ui --restart always -v /var/run/docker.sock:/var/run/docker.sock -p 8010:8999 joinsunsoft/docker.ui:1.0.1
[root@localhost ~]# docker run -d --name docker.ui --restart always -v /var/run/docker.sock:/var/run/docker.sock -p 8010:8999 joinsunsoft/docker.ui:1.0.1
c8a29bd64c8a36643b843e19fffc176f0fedce5d2955d9a54d8a1b08aace59dc
[root@localhost ~]#

6.2.检查docker.ui容器状态
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE                            COMMAND                   CREATED          STATUS          PORTS                                                                                                      NAMES
c8a29bd64c8a   joinsunsoft/docker.ui:1.0.1      "./server"                39 seconds ago   Up 38 seconds   0.0.0.0:8010->8999/tcp, :::8010->8999/tcp                                                                  docker.ui
e4bb13ac643f   portainer/portainer-ce:latest    "/portainer"              8 days ago       Up 10 minutes   8000/tcp, 9443/tcp, 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp                                              portainer
edd347b077fb   nacos/nacos-server:v2.1.0-slim   "bin/docker-startup.…"   3 weeks ago      Up 10 minutes   0.0.0.0:8848->8848/tcp, :::8848->8848/tcp, 0.0.0.0:9848-9849->9848-9849/tcp, :::9848-9849->9848-9849/tcp   nacos
[root@localhost ~]#

6.3.检查docker.ui容器运行日志

检查docker.ui容器运行日志

[root@localhost ~]# docker logs docker.ui
[2023/12/19 02:45:24 UTC 971] [INFO][gohutool.docker4go.ui] (main.initEndpointFile:155) unix Docker Endpoint is attached
[2023/12/19 02:45:24 UTC 975] [INFO][gohutool.docker4go.ui] (main.main:71) Database is load.
[2023/12/19 02:45:24 UTC 976] [INFO][gohutool.docker4go.ui] (main.main:91) Start docker-ui-v1.0.0 now ....
[2023/12/19 02:45:24 UTC 977] [INFO][gohutool.docker4go.ui] (main.startHttpServer:319) Starting HTTP server on [::]:8999
[root@localhost ~]#

7.访问docker.ui

访问地址:http://192.168.159.201:8010/login.html 初始用户名/密码   ginghan/123456

在这里插入图片描述
在这里插入图片描述



  • 22
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值