1、MySQL镜像

1.1、拉取MySQL镜像

docker pull mysql:5.7.37

1.2、MySQL启动命令

docker run --name some-mysql -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root  -v /root/data:/var/lib/mysql mysql:5.7.37

mysql部署的docker连接不上需要重新授权

mysql> grant all privileges on *.* to root@'%' identified by 'root';    
Query OK, 0 rows affected, 1 warning (0.08 sec)
mysql> flush privileges;

2、NACOS镜像

2.1、拉取nacos镜像

docker pull nacos/nacos-server

2.2、启动nacos容器命令

docker run -d --name nacos -p 8848:8848 --restart always -e PREFER_HOST_MODE=hostname -e MODE=standalone nacos/nacos-server

3、Redis容器

3.1、拉取Redis镜像

docker pull redis:4.0

3.2、启动Redis命令

docker run --name redis -p 6379:6379 --restart=always -d redis:4.0

4、Nexus镜像

4.1、拉取Nexus镜像

docker pull sonatype/nexus3

4.2、持久化Nexus目录

mkdir -p /data/nexus/data
chmod 777 -R /data/nexus/data

4.3、启动Nexus命令

docker run -d  --privileged=true --name nexus -p 7002:8081 -p 8082:8082 -p 8083:8083 -p 8084:8084  \
--restart=always \
-v /opt/nexus/nexus-data:/nexus-data \
sonatype/nexus3:latest

4.4、新容器添加5000的端口映射配置后启动

docker run -d -p 8081:8081 -p 5000:5000 -v /data/nexus-data:/nexus-data --name nexus3 sonatype/nexus3:3.34.0
docker run -d  --privileged=true --name nexus -p 7002:8081 -p 8082:8082 -p 8083:8083 -p 8084:8084  --restart=always sonatype/nexus3:latest

如果启动不成功,直接在文件夹中授权,开最大权限

5、jdk1.8镜像

5.1、拉取jdk1.8镜像

docker pull kdvolder/jdk8

5.2、启动jdk1.8容器

docker run -di --name=jdk1.8 kdvolder/jdk8

6、Tomcat镜像

6.1、拉取Tomcat镜像

docker pull tomcat:9.0.35

6.2、启动Tomcat镜像

docker run -p 8080:8080 tomcat:9.0.35

6.3、添加相加防火墙规则开放8080端口

 systemctl status firewalld
firewall-cmd --zone=public --add-port=8080/tcp -permanent

6.4、本地文件拷贝到docker容器tomcat里

#1.查找容器长id
docker inspect -f '{{.ID}}' tomcat-container-id

#2.运行长id'的目录
docker cp /usr/myfile/Test.war 38ef22f922704b32cf2650407e16b146bf61c221e6b8ef679989486d6ad9e856:/usr/local/tomcat/webapps/Test.war

7、zookper镜像

7.1、拉取zookper镜像

docker pull zookeeper

7.2、启动zookper镜像

docker run -d -p 2181:2181 --name zookeeper --restart always  zookeeper

7.2、暴露端口,保证外网能访问

/sbin/iptables -I INPUT -p tcp --dport 2181 -j ACCEPT

8、MongDB镜像

8.1、拉取MongDB镜像

docker pull mongo:latest

8.2、启动MongDB镜像

docker run --name my_mongo -v /mongo_local_data:/data/db --rm -d -p 27017:27017 mongo

8.3、进入MongDB容器

docker exec -it 容器ID mongosh admin

8.4、创建账号

db.createUser({ user:'admin',pwd:'admin',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});

8.4、链接创建的账号,返回1代表成功

db.auth('admin', 'admin')

没做数据持久化的话,容器内的数据随着容器关闭而消失,解决方法是把容器内的目录映射到本地,这样容器即使容器停止、不小心删除了数据也仍然在。

8.5、创建本地持久化目录,重新启动数据库

docker volume create mongo_local_data