windows 10 Docker Desktop 安装
docker 的部分软件安装
- 安装docker
- 安装MySQL
- 安装redis
- 安装zookeeper
- 安装kafka
- mongodb
- 进入容器
- frps(配置具有公网的服务器)
- frpc
- docker compose
- kafka
安装docker
docker官网有教程。再将源改成阿里的源(自行百度)
安装MySQL
先去docker hub中搜索自己需要的版本。
在执行如下命令
下载后我们可以通过如下命令查看我们下载的镜像
sudo docker pull images mkdir log conf data mysql-files如果没有显示镜像信息,则下载失败。下载没成功的话可以自行百度原因。
我们可以安装MySQL:
docker run --restart=always -p 18801:3306 --name mysql8 \ -v /data/dockerData/mysql8/log:/var/log/mysql \ -v /data/dockerData/mysql8/data:/var/lib/mysql \ -v /data/dockerData/mysql8/conf/my.cnf:/etc/mysql/my.cnf \ -v /data/dockerData/mysql8/mysql-files:/var/lib/mysql-files \ -e MYSQL_ROOT_PASSWORD=root@root*** \ -d mysql docker run --restart=always -p 18800:3306 --name mysql \ -v /data/dockerData/mysql5.7/log:/var/log/mysql \ -v /data/dockerData/mysql5.7/data:/var/lib/mysql \ -v /data/dockerData/mysql5.7/conf/my.cnf:/etc/mysql/my.cnf \ -v /data/dockerData/mysql5.7/mysql-files:/var/lib/mysql-files \ -e MYSQL_ROOT_PASSWORD=root@root*** \ -d mysql:5.7my.cnf可以简单写:
[client] default_character_set=utf8 [mysqld] collation_server = utf8_general_ci character_set_server = utf8 sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' [mysql] default_character_set = utf8- –restart=always 表示失败后自动重启。如果一直重启我们需要看看日志文件,查看哪里出错。
可使用下面的命令:
- -p 表示将本机的3306端口映射到MySQL所在机器的3306端口
- –name 表示将其命名为mysql
- -v 表示将本地文件和docker内MySQL的内部文件相映射,本地文件夹和文件需要提前创建
- -e 是传递环境变量 ,这个是将MySQL的root用户的密码更改为xxx
- -d 表示我们使用那个镜像
运行完成会出现一串字符,我们可以使用下面命令查看是否运行成功。
sodo docker ps -a查看所有运行的容器。
安装redis
类似于MySQL ,先拉取镜像。下面的安装命令。
docker run --restart=always -p 18802:6379 --name redis \ -v /data/dockerData/redis/conf/redis.conf:/etc/redis/redis.conf \ -d redis redis-server /etc/redis/redis.confredis.conf的原始配置
protected-mode no port 6379 tcp-backlog 511 timeout 0 tcp-keepalive 300 daemonize no supervised no pidfile /var/run/redis_6379.pid loglevel notice logfile "" databases 16 always-show-logo yes save 900 1 save 300 10 save 60 10000 stop-writes-on-bgsave-error yes rdbcompression yes rdbchecksum yes dbfilename dump.rdb dir ./ replica-serve-stale-data yes replica-read-only yes repl-diskless-sync no repl-diskless-sync-delay 5 repl-disable-tcp-nodelay no replica-priority 100 requirepass root@root*** appendonly no appendfilename "appendonly.aof" appendfsync everysec no-appendfsync-on-rewrite no auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb aof-load-truncated yes aof-use-rdb-preamble yes lua-time-limit 5000 slowlog-log-slower-than 10000 slowlog-max-len 128 latency-monitor-threshold 0 notify-keyspace-events Ex hash-max-ziplist-entries 512 hash-max-ziplist-value 64 list-max-ziplist-size -2 list-compress-depth 0 set-max-intset-entries 512 zset-max-ziplist-entries 128 zset-max-ziplist-value 64 hll-sparse-max-bytes 3000 stream-node-max-bytes 4096 stream-node-max-entries 100 activerehashing yes client-output-buffer-limit normal 0 0 0 client-output-buffer-limit replica 256mb 64mb 60 client-output-buffer-limit pubsub 32mb 8mb 60 hz 10 dynamic-hz yes aof-rewrite-incremental-fsync yes rdb-save-incremental-fsync yes安装zookeeper
sudo docker run --restart=always -p 2181:2181 --name zookeeper \ -v /data/zookeeper/data:/data \ -v /data/zookeeper/conf:/conf \ -v /data/zookeeper/datalog:/datalog \ -v /etc/localtime:/etc/localtime \ -d zookeeper:latest如果已经映射了文件了则zoo.cfg文件的编写应该按照相对路径:
clientPort=2181 dataDir=/data dataLogDir=/datalog tickTime=2000 initLimit=5 syncLimit=2 autopurge.snapRetainCount=3 autopurge.purgeInterval=0 maxClientCnxns=60 standaloneEnabled=true admin.enableServer=true quorumListenOnAllIPs=true server.1=1.117.89.91:2888:3888 server.2=121.4.104.4:2888:3888 server.3=120.48.110.64:2888:3888安装kafka
sudo docker run -p 9092:9092 --name kafka \ -e KAFKA_BROKER_ID=1 \ -e KAFKA_ZOOKEEPER_CONNECT=192.168.1.113:2181/kafka \ -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.113:9092 \ -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \ -v /etc/localtime:/etc/localtime \ -v /usr/docker/data/kafka:/kafka \ -d wurstmeister/kafka # 创建主题 bin/kafka-topics.sh --create --zookeeper 192.168.1.113:2181/kafka --replication-factor 1 --partitions 1 --topic test-topic # 消费 bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test-topic --from-beginning # 生产 bin/ --broker-list localhost:9092 --topic test-topicmongodb
docker pull mongo:4.2.6 docker run -d --name mongod -p 27017:27017 mongo:4.2.6 --auth进入容器
# 进入MySQL的bash sudo docker exec -it mysql bash # 其他的也类似 sudo docker exec -it kafka /bin/bashfrps(配置具有公网的服务器)
创建 frps.toml
[common] # 监听端口 bind_port = 7000 # 面板端口 dashboard_port = 7500 # 登录面板账号设置 dashboard_user = admin dashboard_pwd = spoto1234 # 设置http及https协议下代理端口(非重要) vhost_http_port = 7080 vhost_https_port = 7081 # 身份验证 token = 12345678docker run --restart=always --network host -v /etc/frp/frps.toml:/etc/frp/frps.toml --name frps -d snowdreamtech/frpsfrpc
[common] # server_addr为FRPS服务器IP地址 server_addr = x.x.x.x # server_port为服务端监听端口,bind_port server_port = 7000 # 身份验证 token = 12345678 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 2288 # [ssh] 为服务名称,下方此处设置为,访问frp服务段的2288端口时,等同于通过中转服务器访问127.0.0.1的22端口。 # type 为连接的类型,此处为tcp # local_ip 为中转客户端实际访问的IP # local_port 为目标端口 # remote_port 为远程端口 [ssh] type = tcp local_ip = 192.168.1.229 local_port = 80 remote_port = 18022 [unRAID web] type = tcp local_ip = 192.168.1.229 local_port = 80 remote_port = 18088 [Truenas web] type = tcp local_ip = 192.168.1.235 local_port = 80 remote_port = 18188 [speedtest] type = tcp local_ip = 192.168.1.229 local_port = 6580 remote_port = 18190 [webdav] type = tcp local_ip = 192.168.1.235 local_port = 18080 remote_port = 18189 [RDP PC1] type = tcp local_ip = 192.168.1.235 local_port = 3389 remote_port = 18389docker run --restart=always --network host -v /etc/frp/frpc.toml:/etc/frp/frpc.toml --name frpc -d snowdreamtech/frpcdocker compose
kafka
services: zookeeper: image: zookeeper container_name: zookeeper ports: - 2181:2181 restart: always networks: - kafka environment: - TZ="Asia/Shanghai" volumes: - /data/dockerData/zookeeper/data:/data - /data/dockerData/zookeeper/conf:/conf - /etc/localtime:/etc/localtime kafka: image: wurstmeister/kafka container_name: kafka ports: - 9092:9092 networks: - kafka environment: - TZ="Asia/Shanghai" - KAFKA_BROKER_ID=1 - KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181/kafka - KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.56.109:9092 - KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 volumes: - /etc/localtime:/etc/localtime - /data/dockerData/kafka:/kafka depends_on: - zookeeper kafka-ui: image: provectuslabs/kafka-ui container_name: kafka-ui ports: - 8081:8080 depends_on: - kafka environment: - KAFKA_CLUSTERS_0_NAME=local - KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS=kafka:9092 networks: kafka:
(精华)2020年10月30日 Docker Windows10安装Docker Desktopwindows10下安装docker
windows 安装docker desktop docker windows10安装
Docker的三种网络代理配置:dockerd pull镜像代理;容器docker run网络代理;docker build代理--build-argdocker pull 代理
windows 10 remote desktopmicrosoft remote desktop
rdesktop 支持 windows10吗 rdesktop 参数
docker desktop windows 10 2h2 无法兼容 windows支持docker
Windows Server 2019服务器 Docker Desktop windows server 2019服务器管理器打不开
Windows 10/11安装WSL、Ubuntu、Docker Desktopwindows10安装ubuntu20.04
docker desktop requires the server service to be enabled windows 10