whatzyt

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

0、docker 安装的大体流程(使用nacos作为示例)

1. 现在 hub.docker.com 中查询镜像的 TAG 版本,如果安装最新版本,这步不用管;

2. 下载镜像,这里使用 nacos 举例

  指定版本:docker pull nacos/nacos-server:v2.23

  最新版本:docker pull nacos/nacos-server

3. 查看镜像是否下载成功

  docker images

4. 将 docker 镜像的配置文件、日志文件等挂载到主机上,在修改配置文件、查看日志时就不需要进入容器内部再看了

  首先启动nacos镜像:

    docker run -d --name nacos -p 8848:8848 -e MODE=standalone nacos/nacos-server

  将nacos文件拷贝到主机上的/app目录下

    docker cp nacos:/home/nacos /usr/local

  删除这个nacos容器

    docker rm -f nacos

5. 重新创建 nacos 容器:

docker run -d --name nacos \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
--privileged=true \
--restart=always \
-v /mydata/nacos/logs:/home/nacos/logs \
-v /mydata/nacos/data:/home/nacos/data \
-v /mydata/nacos/config:/home/nacos/config \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST={mysql IP 地址} \
-e MYSQL_SERVICE_DB_NAME={数据库名称} \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD={mysql密码} \
nacos/nacos-server

 

这里还遇到一个很奇怪的问题:

  docker: invalid reference format: repository name must be lowercase.
大概意思是: 

  docker:引用格式无效:存储库名称必须小写。

后面经过多次尝试,将每一个 '\' 前面都加了一个空格,才执行成功,太坑了!! 

6. 查看启动容器启动日志

  使用 docker ps -a 查看容器状态,如果启动失败,可以使用

    docker logs 容器名称

  查看启动日志,从而解决问题!

 

1、docker 安装

docker pull 名称:版本号

示例:docker pull mysql:5.7

 

2、docker 镜像查看

docker images:查看 docker 下载过的镜像文件

 

3、docker 镜像创建、启动、文件映射

示例:
docker run -p 3306:3306 --name mysql \ -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7

【docker run -p 3306:3306】:前面的 3306 是 Linux 系统中的 port,后面的 3306 是 docker 容器中的 port;

【--name mysql】:给这个容器起个名字;

【-v /mydata/mysql/log:/var/log/mysql】:-v 就是文件映射,冒号前面的是 Linux 系统中的目录,冒号后面是 docker 容器中的目录;

【-d mysql:5.7】:-d 是启动命令,mysql 是下载的 images 的名称;注意,一定要加版本号,不然有可能下载个最新版本启动;

 

4、进入 docker 容器内部

docker exec -it 容器名称 bash

示例:docker exec -it mysql bash

退出容器命令:exit

 

5、查看已经启动的容器

docker ps -a:所有创建过的容器,停止运行的容器可以从该命令中看到;

docker ps:正在运行的容器;

 

6、停止、删除、重启指令

docker stop 容器名称:停止正在运行的容器

docker rm 容器名称:删除 docker 容器

docker rmi 容器名称:删除 docker 镜像

docker restart 容器名称:重启 docker 容器

示例:

docker stop mysql

docker rm mysql

docker rmi mysql

docker restart mysql

 

7、查看 docker 容器中的日志

docker logs 容器名称

示例:docker logs mysql

 

8、查看 docker 容器对应的 ip

docker inspect 容器名称

示例:

docker inspect es

 

 9. docker 查看想要下载的镜像版本号

想要查看 TAG 版本号,可以在 docker hub 上查看;

https://hub.docker.com

 

posted on 2022-04-11 18:06  whatzyt  阅读(32)  评论(0编辑  收藏  举报