用Dockers搭建本地开发环境

本地开发环境是影响工作效率最重要的因素(还有一个是IDE,以后有时间会专门写这个)

一般来说有以下几种方案可以选择

  • 原生安装 这个是最原始也是最麻烦的,比如搞PHP,要自己装nginx+php+mysql+redis 搞不好还得装个node、composer、memcached。这个搞法基本上熟练也得一天出去了。Mac还好,Windows就要无尽的google了。
  • 虚拟机 这个有两种方案,我都尝试过,一种是用VM,安个centos,这种方法和原生安装差不多,也比较折腾,另外VM虚拟机占用系统资源太大,每次开机都比较慢。另一种就是用vargrant,这个方法的好处是比较轻,开机快。但是终究是虚拟机,最大的问题就是目录共享问题,造成无法正常安装node,总之各种坑
  • Docker 最终选择了Docker的方案。Docker基本上是集合了上面的所有优点了,他自身最大的好处就是想用的时候拉起来,不想用的时候干掉,数据和容器是分开的。另外镜像都是官方的,稳定,靠谱。缺点也是有的,就是底层其实还是用的linux,所以在windows上跑不大稳定。

我目前用的方案是

centos7 官方镜像 里面安装了 nginx php node

mysql 官方镜像

redis 官方镜像

这样一共需要运行三个容器,数据都-v 到本地磁盘,容器干掉了数据也不丢失。

常用命令

镜像

搜索镜像

$ docker search xxx

如果出现 connection refused 可以试试重启docker

下载镜像

$ docker pull xxx

删除镜像

$ docker rmi xxx

本地容器保存快照 生成镜像压缩文件

$ docker export -o dev-latest.tar 7e4b0

导入镜像

$

保存镜像

$ docker save -o redis-latest.tar 9813

容器导入 是将当前容器 变成一个新的镜像
镜像导入 是复制的过程

save 保存镜像所有的信息-包含历史
export 只导出当前的信息

容器

查看当前运行的容器

$ docker ps
$ docker ps -a

$ docker stats

$ docker top

查看当前docker版本

$ docker info

运行容器

$ docker run -d [-p 主机端口:容器端口] --name [容器名自定义] [-v 主机/目录:容器/目录] [镜像名]

例如

centos

$ docker run -d -p 80:80 --name dev -v D:/docker/dev/www:/home/www centos

redis
$ docker run -d -p 6379:6379 --name dev-redis -v D:/docker/redis/data:/data redis

mysql

$ docker run --name dev-mysql -v D:/docker/mysql:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=111111 -d mysql

停止 开启 重启

$ docker stop
$ docker start
$ docker restart

删除容器

$ docker rm

如果有自己的仓库可以

$ docker login -u 用户名 -p 密码 仓库地址

进入容器

$ docker exec -it [容器名] /bin/bash

如果碰到开机报错:

Docker command did not complete within the allowed timeout. Output:

可能是windows 防火墙问题

在防火墙里放开下面这俩exe
C:\Program Files\Docker\Docker\Docker for Windows.exe
C:\Program Files\Docker\Docker\DockerCli.exe

PS 如果发现容器里面挂载的目录不见了
但是执行 docker inspect 发现这个配置其实是有的

那么 可能是挂载的主机磁盘没有写权限 改完后重启试试

容器间通信

默认可以用内网IP通信 网段是 172.17.0.1...

可以通过下面的命令查看容器IP

$ docker inspect --format='{{.NetworkSettings.IPAddress}}' CONTAINER_ID

这里注意 容器的IP是根据启动顺序来的,不是一直固定的,所以启动的时候最好有一定顺序,避免老去改配置的麻烦

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建Nacos的步骤如下: 1. 首先,从GitHub复制nacos-db.sql文件并执行SQL文件,以创建Nacos所需的数据库和表结构。 2. 接下来,创建一个临时的Nacos容器,可以使用以下命令: ``` docker run -p 8848:8848 --name nacostest -d nacos/nacos-server:latest ``` 这个命令会在后台运行一个Nacos容器,并将主机的8848端口映射到容器的8848端口上。 3. 接下来,从容器中复制Nacos的配置文件(application.properties)和日志文件到主机上的指定路径。首先,创建一个用于存放配置文件和日志文件的文件夹,可以使用以下命令: ``` mkdir -p /dockerImageFile/nacos/conf mkdir -p /dockerImageFile/nacos/logs ``` 然后,将配置文件和日志文件从容器中复制到刚创建的文件夹中,可以使用以下命令: ``` docker cp nacostest:/home/nacos/conf/ /dockerImageFile/nacos/ docker cp nacostest:/home/nacos/logs/ /dockerImageFile/nacos/ ``` 这些命令将会把容器中的配置文件和日志文件复制到指定的文件夹中。 4. 接下来,根据需要,在Nacos的配置文件(application.properties)中进行必要的修改。可以使用以下命令来编辑配置文件: ``` vim /dockerImageFile/nacos/conf/application.properties ``` 在编辑器中,可以根据实际需求对配置文件进行修改。 5. 如果在启动Nacos容器后出现了"No DataSource set"的错误,可以通过查看容器启动日志来获取更多信息,可以使用以下命令: ``` docker logs nacos ``` 查看日志可以帮助定位问题并进行相应的修复。 总结起来,搭建Nacos的步骤包括:创建数据库和用户、下载Nacos镜像、搭建临时Nacos容器、复制配置文件和日志文件到主机、修改配置文件(如果需要),以及查看启动日志以排查错误。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值