Docker慢慢学

1、Docker DeskTop

2、N8N下载

docker run -p 8888:5678 n8nio/n8n

3、Kafka

kafka依赖zookeeper,先启动zookeeper

docker pull zookeeper

docker run -d --name zookeeper -p 2181:2181 -e ALLOW_ANONYMOUS_LOGIN=yes zookeeper

启动kafka

docker pull confluentinc/cp-kafka:latest

docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=host.docker.internal:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 -e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 confluentinc/cp-kafka:latest

测试创建:

kafka-topics --create --topic test --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1

kafka-topics --list --bootstrap-server localhost:9092

生产一条数据

kafka-console-producer --bootstrap-server <broker-list> --topic <topic-name>

消费数据测试:

kafka-console-consumer --bootstrap-server localhost:9092 --topic test --from-beginning

4、Mysql

拉起一个Mysql容器:docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=xxxx -p 13306:3306 -d mysql:latest

查看容器:docker ps

进入mysql容器:

docker exec -it aaa4e5f36855 /bin/bash

进入mysql:

mysql -uroot -p (密码默认是root的)

授权远程登录:

复制代码
`GRANT ALL PRIVILEGES ON database_name.* TO 'root'@'%';` FLUSH PRIVILEGES;

查看docker地址:

docker inspect <容器ID或名称>;

"Networks": {

"bridge": {

"IPAMConfig": null,

"Links": null,

"Aliases": null,

"NetworkID": "xxxxxx",

"EndpointID": "yyyyyy",

"Gateway": "172.17.0.1",

"IPAddress": "172.17.0.2",

"IPPrefixLen": 16,

"IPv6Gateway": "",

"GlobalIPv6Address": "",

"GlobalIPv6PrefixLen": 0,

"MacAddress": "02:42:ac:11:00:02",

"DriverOpts": null

}

}

这里的 "IPAddress" 就是容器的IP地址。

但是本地网络连不上~~~怎么解决??

5、postgresql

docker run --name some-postgres -e POSTGRES_PASSWORD=****** -d -p 5432:5432 -v pgdata:/var/lib/postgresql/data postgres

一旦容器运行,你就可以使用 psql 客户端或其他数据库工具通过 TCP/IP 连接到你的 PostgreSQL 实例了。例如,使用以下命令连接到你的 PostgreSQL 实例:

psql -h localhost -p 5432 -U postgres -W

这里:

  • -h localhost:指定主机名。

  • -p 5432:指定端口号。

  • -U postgres:指定用户名(默认是 postgres)。

  • -W:提示输入密码。

6、Redis

docker pull redis

docker run --name redis-container -d -p 6379:6379 redis

这个命令做了几件事情:

  • --name redis-container:给容器命名为redis-container

  • -d:让容器在后台运行。

  • -p 6379:6379:将容器的6379端口映射到宿主机的6379端口。Redis默认使用6379端口。

  • redis:指定使用之前拉取的redis镜像。

如果你需要更高级的配置,比如设置密码或者持久化存储,你可以在运行容器时添加环境变量或挂载卷。例如,设置密码:

docker run --name redis-container -d -p 6379:6379 -e REDIS_PASSWORD=yourpassword redis redis-server --requirepass yourpassword

或者使用卷来持久化数据:

docker run --name redis-container -d -p 6379:6379 -v /my/own/datadir:/data redis redis-server --appendonly yes

进入redis:

docker exec -it docker_id

redis-cli -h localhost -p 6379 -a yourStrongPasswor

docker exec -it redis-server redis-cli -a yourStrongPassword

相关推荐
Web项目开发15 小时前
Mysql创建索引的SQL脚本,复制粘贴即可使用
数据库·sql·mysql
主公不搬砖16 小时前
Nacos 2.5.2 国产信创 kingbase适配
java·docker·nacos·信创·kingbase·国产适配
小罗和阿泽16 小时前
MySql数据库系列 数据库基础操作
数据库·mysql
周末吃鱼16 小时前
mysql8.0支持CURRENT_DATE如何写
数据库·sql·mysql
kaico201816 小时前
MySQL的窗口函数
数据库·mysql
薛定谔的猫198216 小时前
LlamaIndex(三) LlamaHub工具集
数据库·mysql·llamahub
ysy164806723916 小时前
Docker安装(Windows版)
windows·docker·容器
尽兴-17 小时前
SQL 执行失败如何回滚?事务已提交还能恢复吗?——MySQL 误操作数据恢复全指南
sql·mysql·binlog·undolog·redolog
2501_9404140817 小时前
搞了一次平台工程,我把本地的 Docker Desktop 彻底卸了
运维·docker·容器
heze0917 小时前
sqli-labs-Less-6自动化注入方法
mysql·网络安全·自动化