基于docker快速搭建开发环境

2021/10/25 docker 共 2303 字,约 7 分钟

本文主要基于docker快速搭建开发环境,用于平时自己进行调试,实际项目环境需要由更专业的运维人员进行搭建。这里默认已经有了linux环境,或者是
windows上安装了docker环境。在此基础 上创建docker容器。

docker安装

apt-get install docker.io

修改docker源,在/etc/docker/daemon.json下写入

{"registry-mirrors":["https://reg-mirror.qiniu.com/"]}

重启docker服务

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

安装Portainer,一个轻量级的docker管理工具

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name portainer portainer/portainer-ce

参考用Portainer管理docker集群

安装ubuntu环境

首先给出Dockerfile

FROM ubuntu:18.04

ENV LANG C.UTF-8

RUN  apt-get update -y \
    && apt-get install openssh-client -y \
    && apt-get install openssh-server -y \
    && apt-get install vim -y \
    && ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    && echo "Asia/Shanghai" > /etc/timezone \
    && apt-get install tzdata -y \
    && echo "root:123456" | chpasswd  \
    && sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config \
    && sed -i 's/^#\(PermitRootLogin.*\)/\1/' /etc/ssh/sshd_config \
    && /etc/init.d/ssh start \
    && echo "LANG=C.UTF-8" >> /etc/profile \
    && echo "export LANG" >> /etc/profile


CMD ["/usr/sbin/sshd", "-D"]

在当前目录下构建镜像

docker build -t ubuntu-dev:1.0 .

运行容器

docker run --name ubuntu-dev -t -i -d -p 10022:22 ubuntu-dev:1.0

运行容器后可以通过ssh连接

ssh -p 10022 root@ip

这里已经将镜像推送到dockerhub,直接拉取镜像运行

docker run --name ubuntu-dev -t -i -d -p 10022:22 onefeng/ubuntu-dev:1.0

mysql环境

docker run --name mysql-dev -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

mysql8.0版本的安装使用

docker run --name mysql-8 -p 13306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0

进入容器

docker exec -it 容器id bash

连接mysql

mysql -u root -p

执行下面语句

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

redis环境

docker run -itd --name redis-dev -p 16379:6379 redis

mongodb环境

docker run -itd --name mongo-dev -p 27017:27017 mongo

默认没有密码

es kibana环境

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx1024m" -d elasticsearch:7.10.1

访问ip:9200,启动es时最小内存512,最大内存1024

docker run --name kibana --link=elasticsearch:es  -p 5601:5601 -d kibana:7.10.1

通过link参数连接到es容器名称,访问ip:5601
参数解释
–link :alias\ alias为容器别名

rabbitmq环境

docker run -d  -p 15672:15672  -p  5672:5672  -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin --name rabbitmq rabbitmq:3-management

访问ip:15672 用户名/密码 admin/admin

搜索

    内容