各个版本linux系统安装docker
官方链接
https://docs.docker.com/engine/install/
安装各种常用软件
官方镜像库链接
https://hub.docker.com/
安装mysql
-p 端口映射 -v 数据存放地址 -e初始密码设置 restart 自动重启
docker run --name mysql -p 3306:3306 -v /opt/mysql/conf.d:/etc/mysql/conf.d -v /opt/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=zlj721 --restart=always -d mysql:8 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password --innodb_buffer_pool_size=1G
安装redis
-p 端口映射
-v 数据存放地址
-d 配置地址
–restart=always 自动重启
docker run -p 26379:6379 --name njbk-redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf --requirepass 123456
安装elasticSearch
docker network create somenetwork
docker run -d --name elasticsearch --net somenetwork -p 29200:9200 -p 29300:9300 -e "discovery.type=single-node" elasticsearch:8.2.0
docker run --name kibana --net somenetwork -d --link elasticsearch:elasticsearch -p 25601:5601 kibana:8.2.0
安装rabbitmq
这个可以
docker run -d --hostname my-rabbit --name rabbitmq -p 25672:15672 -v /docker/rabbitmq/data:/var/lib/rabbitmq -v /docker/rabbitmq/conf:/etc/rabbitmq -v /docker/rabbitmq/log:/var/log/rabbitmq -e RABBITMQ_DEFAULT_USER=guest -e RABBITMQ_DEFAULT_PASS=123456 -e RABBITMQ_LOG_BASE=/var/log/rabbitmq rabbitmq:3.9.12-management
如起不来docker logs -f rabbitmq 查看日志
failed to open log file at '/var/log/rabbitmq/rabbit@my-rabbit_upgrade.log', reason: permission denied
添加权限
docker run --privileged=true \
-d -p 5672:5672 -p 25672:15672 \
--name rabbitmq -v /docker/rabbitmq/data:/var/lib/rabbitmq -v /docker/rabbitmq/conf:/etc/rabbitmq -v /docker/rabbitmq/log:/var/log/rabbitmq \
--restart=always --hostname=rabbitmqhost -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=guest -e RABBITMQ_DEFAULT_PASS=123456 \
rabbitmq:3.9.12-management
-d 后台运行容器;
–name 指定容器名;
-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);
-v 映射目录或文件;
–hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)
安装nginx
docker run --name my-nginx -v /docker/nginx/html:/usr/share/nginx/html -v /docker/nginx/logs:/var/log/nginx -v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -d -p 28080:80 nginx
启动是本地没有conf文件所以先得准备一个
$ docker run --name tmp-nginx-container -d nginx
$ docker cp tmp-nginx-container:/etc/nginx/nginx.conf /docker/nginx/conf/nginx.conf
$ docker rm -f tmp-nginx-container
安装postgres
docker run --name postgres \
--restart=always \
-e POSTGRES_PASSWORD=Czdx@1234 \
-e PGDATA=/var/lib/postgresql/data \
-p 54320:5432 \
-v /docker/postgres/data:/var/lib/postgresql/data \
-d postgres
docker run -d --name postgresql --restart always -v /docker/postgresql/data/:/var/lib/postgresql/data -e POSTGRES_PASSWORD=Czdx@1234 -p 54320:5432 postgres:14.1
安装mongo
docker run -d --name mongo --restart=always --privileged=true -p 27017:27017 -v /usr/local/mongodb/data:/data/db mongo:4.2 --auth
#进入容器
docker exec -it mongo /bin/bash
#登录mongodb
mongo admin
#创建一个名为 root,密码为 123456 的用户。
db.createUser({ user:'root',pwd:'123456',roles:[{ role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
#尝试使用上面创建的用户信息进行连接。
db.auth('root', '123456')
#选择admin库
use admin
#创建集合users
db.createCollection('users')
#插入数据
db.users.insert({"name":"小李","age": NumberInt(33)})
#查看数据
db.users.find()