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

相关推荐
Frank_refuel39 分钟前
终端环境下:Ubuntu 22.04.1 安装 MySQL 数据库
数据库·mysql·ubuntu
萧行之7 小时前
Docker部署Loki+Grafana+Vector实现全服务器日志监控(含N8N/SSH/Fail2ban监控)
服务器·docker·grafana
存在的五月雨7 小时前
Mysql 索引的一些
数据库·mysql
黄俊懿7 小时前
MySQL主从复制:从“异步“到“GTID“,数据同步的进化之路
数据库·sql·mysql·oracle·架构·dba·db
人工智能培训8 小时前
工程科研中的AI应用:结构力学分析技巧
人工智能·深度学习·机器学习·docker·容器
zhou周大哥8 小时前
银河麒麟安装mysql
数据库·mysql
计算机安禾8 小时前
【Linux从入门到精通】第35篇:容器化技术预备——Docker安装与基本概念
linux·运维·docker
子木HAPPY阳VIP8 小时前
信创UOS,Docker 完整操作部署(Dockerfile部署方式)&排错整合
linux·运维·redis·nginx·docker·容器·tomcat
Sherry Wangs9 小时前
MySQL 与向量数据库的核心区别:从结构化数据到语义搜索
数据库·mysql
@小柯555m9 小时前
MySql(高级操作符--高级操作符练习(2))
数据库·sql·mysql