创建docker网络

  1. docker network create --subnet=172.21.0.0/24 --gateway=172.21.0.1 my-app #创建桥接网络
  2. docker network ls
  3. docker inspect my-app #查看网络详情或者是容器详情

在同一个桥接网络下可以通过容器名称进行访问 使用的是dns解析

淘汰了links中修改hosts的方式

安装mysql

  1. docker run -p 3306:3306 --name mysql \
  2. --network=my-app \
  3. -v /mydata/mysql/log:/var/log/mysql \
  4. -v /mydata/mysql/data:/var/lib/mysql \
  5. -v /mydata/mysql/conf:/etc/mysql \
  6. -e MYSQL_ROOT_PASSWORD=root \
  7. -d mysql:5.7.36

配置文件

  1. [client]
  2. default-character-set=utf8
  3. [mysql]
  4. default-character-set=utf8
  5. [mysqld]
  6. init_connect='SET collation_connection = utf8_unicode_ci'
  7. init_connect='SET NAMES utf8'
  8. character-set-server=utf8
  9. collation-server=utf8_unicode_ci
  10. skip-character-set-client-handshake
  11. skip-name-resolve
  12. slow_query_log = ON
  13. slow_query_log_file=/var/log/mysql/mysql.slow
  14. long_query_time=1
  15. lower_case_table_names = 1

安装redis

  1. docker run -p 6379:6379 --name redis \
  2. --network=my-app \
  3. -v /mydata/redis/data:/data \
  4. -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
  5. -d redis redis-server /etc/redis/redis.conf

安装mq

  1. docker run -d --hostname my-rabbit --name rabbitmq \
  2. --network=my-app \
  3. -p 15672:15672 \
  4. -p 5672:5672 \
  5. -e RABBITMQ_DEFAULT_USER=root \
  6. -e RABBITMQ_DEFAULT_PASS=123456 \
  7. -d rabbitmq:management

查看docker容器启动时候执行了什么命令

这个命令只能看到部分信息

  1. docker ps -a --no-trunc

安装nacos

  1. docker run \
  2. --name=nacos \
  3. --hostname=eef5e4e33f9d \
  4. --env=MODE=standalone \
  5. --env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
  6. --env=PREFER_HOST_MODE=ip \
  7. --env=BASE_DIR=/home/nacos \
  8. --env=CLASSPATH=.:/home/nacos/conf: \
  9. --env=CLUSTER_CONF=/home/nacos/conf/cluster.conf \
  10. --env=FUNCTION_MODE=all \
  11. --env=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \
  12. --env=NACOS_USER=nacos \
  13. --env=JAVA=/usr/lib/jvm/java-1.8.0-openjdk/bin/java \
  14. --env=JVM_XMS=1g \
  15. --env=JVM_XMX=1g \
  16. --env=JVM_XMN=512m \
  17. --env=JVM_MS=128m \
  18. --env=JVM_MMS=320m \
  19. --env=NACOS_DEBUG=n \
  20. --env=TOMCAT_ACCESSLOG_ENABLED=false \
  21. --env=TIME_ZONE=Asia/Shanghai \
  22. --volume=/mydata/nacos/logs/:/home/nacos/logs \
  23. --volume=/mydata/nacos/conf/application.properties:/home/nacos/conf/application.properties \
  24. --network=my-app \
  25. --workdir=/home/nacos \
  26. -p 8848:8848 \
  27. -p 9848:9848 \
  28. --restart=no \
  29. --label='org.label-schema.schema-version== 1.0 org.label-schema.name=CentOS Base Image org.label-schema.vendor=CentOS org.label-schema.license=GPLv2 org.label-schema.build-date=20180531' \
  30. --label='org.opencontainers.image.licenses=' \
  31. --label='org.opencontainers.image.revision=3ecf3cd381938b61cbb4d565dd7f1cc2320ea5ee' \
  32. --label='org.opencontainers.image.version=v2.0.3' \
  33. --label='org.opencontainers.image.title=nacos-docker' \
  34. --label='org.opencontainers.image.source=https://github.com/nacos-group/nacos-docker' \
  35. --label='org.opencontainers.image.url=https://github.com/nacos-group/nacos-docker' \
  36. --label='org.opencontainers.image.description=This project contains a Docker image meant to facilitate the deployment of Nacos .' \
  37. --label='org.opencontainers.image.created=2021-07-31T10:05:17.868Z' \
  38. --runtime=runc \
  39. --detach=true \
  40. nacos/nacos-server

安装sentinal

  1. docker run --name sentinel -d -p 8858:8858 bladex/sentinel-dashboard

安装pip

  1. yum install -y python-pip

安装runlike

但是一般linux是python2.x,要先升级到3.x

yum install python3

yum install python3-pip

(如果版本问题: pip3 install —upgrade pip)

pip3 install runlike

就可以使用runlike了

使用runlike 容器名或runlike -p 容器名

  1. pip install runlike
  2. # 格式:runlike -p <容器名>|<容器ID>

安装代码分析工具 sonarqube (docker安装不上)

  1. docker run --name sonar \
  2. --network=my-app \
  3. -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true \
  4. -p 9000:9000 \
  5. -v /mydata/sonar/conf:/opt/sonarqube/conf \
  6. -v /mydata/sonar/extensions:/opt/sonarqube/extensions \
  7. -d sonarqube
  1. mvn sonar:sonar -Dsonar.projectKey=com.jrwp:jmt_mysql -Dsonar.host.url=http://localhost:9000 -Dsonar.login=926d3ebb13fcda1f64a7dabb095e91d8f95a2d5d

安装nginx

  1. docker run -p 80:80 --name nginx \
  2. --network=my-app \
  3. -v /mydata/nginx/html:/usr/share/nginx/html \
  4. -v /mydata/nginx/logs:/var/log/nginx \
  5. -v /mydata/nginx/conf:/etc/nginx \
  6. -d nginx

安装oracle

  1. 1、制作镜像文件
  2. 1)拉取镜像
  3. docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
  4. 2)导出镜像
  5. docker save -o oracle_11g.tar registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest
  6. 2、离线安装教程
  7. 1)加载镜像
  8. docker load < oracle_11g.tar
  9. 2)先创建一个临时容器
  10. docker run --name oracle_temp -p 1500:1521 --privileged=true -d registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest
  11. #把临时容器中的oradata目录拷贝到正式容器要挂在的目录拷贝容器中的oradata目录
  12. mkdir -p /mydata/oracle/data/
  13. docker cp oracle11g:/home/oracle/app/oracle/oradata/ /mydata/oracle/data/
  14. #修改挂载目录所属用户和用户组
  15. chown -R 500:500 /mydata/oracle/
  16. #删除临时容器
  17. docker rm -f oracle11g
  18. 3)创建正式容器
  19. 命令:docker run --name oracle11g -p 1521:1521 --privileged=true -d -v /mydata/oracle/data/oradata:/home/oracle/app/oracle/oradata registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest
  20. #进入容器
  21. docker exec -it oracle11g bash
  22. #删除
  23. rm -rf /home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctl
  24. #拷贝
  25. cp /home/oracle/app/oracle/oradata/helowin/control01.ctl /home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctl
  26. #退出
  27. exit;
  28. # 重启
  29. docker restart oracle11g
  30. #进入容器
  31. docker exec -it oracle11g bash
  32. #环境变量
  33. source ~/.bash_profile
  34. sqlplus / as sysdba
  35. #登录sqlplus
  36. #修改system用户账号
  37. alter user system identified by oracle;
  38. #修改sys用户账号
  39. alter user sys identified by oracle;
  40. #创建内部管理员账号,创建一个用户名为golaxy_orcl的用户,密码为 oracle_cn
  41. #create user golaxy_orcl identified by oracle_cn;
  42. #将dba权限授权给内部管理员账
  43. #grant connect,resource,dba to golaxy_orcl;
  44. #修改密码规则策略为密码永不过期
  45. ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
  46. #修改数据库最大连接数据
  47. alter system set processes=1000 scope=spfile;
  48. shutdown immediate;
  49. startup;