喵个咪的博客喵个咪的博客
喵个咪的技术与生活
文章列表
文章分类
文章标签
时间线
喵个咪的技术与生活
文章列表
文章分类
文章标签
时间线
健康养生 1fastapi 1随笔日志 1产品设计 1ASIO 2cron 1rclone 1flutter 1RxDart 1Make 2CMake 2Ninja 1设计模式 2Cache Aside Pattern 1缓存设计模式 1汽车 1go 2CDC 1PostgreSQL 6Centos 1docker 1CLion 1云手机 1GoogleTest 1Cococs2dx 1Cocos Creator 1代码注释 1IDE 3Python 4TRC20 1C++ 8类型转换 1CQRS 1Kafka Streams 1Bazel 2Docker 21Go 6crontab 1客户留存率 1EFK 1RustDesk 1Jitsi Meet 1Traefik 1Swagger 1Docker Hub 1VIM 1Word 1VBA 1Doris 1量化交易 2Flutter 13Widget 1Ent 2SQL 2Excel 2配色 1TypeScript 3C# 1Sealed Class 2微信小程序 1人脸识别 2RK3588S 1Android Studio 1iOS 1GetX 1鸿蒙 1字体渲染 1期货 1Futures 1地理围栏 1GEO 1Git 2Golang 99Go-Kratos 86GoWind 41UBA 1算法 5WebRTC 2MongoDB 1Headless CMS 1WASM 1随机种子 1MacOS 3Ubuntu 2GCC 1Godot 1Clang 1Superset 1CentOS 1OpenCV 1咖啡 1Android 1Google Play 1Unity WebGL 1Dexie 1IndexedDB 1htop 1IM 1Postgresql 1Mattermost 1Qt 4TL;DR 1Swift 1Javascript 2JetBrains 1Typescript 1libuv 1Linux 1本地化 1国际化 1状态同步 1帧同步 1泡泡水 1Markdown 1机器学习 1QTT 1MQTT 2MSB 1LSB 1npm 1pnpm 1yarn 1OCR 1OHLC 1OLTP 1OLAP 1OpenAI 1OpenAPI 1数织 1Ping 1人体姿态识别 1全文搜索 1交叉表 1Prometheus 1Protobuf 2Docx 1QUIC 1Reactor 1Redis 1REST 1CoTURN 2RBAC 1Selenium 1基准测试 1Spine 1股票 1Roguelike 2ThingsBoard 3时间戳 1时序数据库 3交易所 1Unity 2用户画像 1PgBouncer 1Vite 1Vue 1WebGL 1加权随机 1BI 1数据血缘 1Roguelite 1Protocol 1WiFi 1WSL 3Windows 4
Windows下释放Docker所占用的WSL磁盘空间

Date: 1/1/2020Category: 运维技术Tag: Docker, WSL

使用下面的命令清理镜像:

docker system prune
使用 Docker 部署 CoTURN 新手指南

Date: 1/1/2020Category: 运维技术Tag: Docker, CoTURN

在本指南中,我们将学习如何在 Docker 容器中运行 CoTURN。COTURN 是一款免费的开源 TURN 服务器,可用于 WebRTC 视频和音频通信以及 VoIP 服务

先决条件

  • 您应该在系统上安装 docker。了解如何在系统上安装 docker 超出了本文的范围
  • 建议但不要求具备一些 docker 基础知识

安装

Docker 提供了 CoTURN 镜像,可用于在容器中轻松设置 CoTURN 服务器

步骤 1 拉取 Docker 镜像

安装docker coturn。从云存储库Docker Hub中拉取coturn的docker镜像。

PostgreSQL Docker容器修改时区

Date: 1/1/2020Category: 运维技术Tag: PostgreSQL, Docker

做了一些配置的修改之后,查询到的数据倒是显示的是+8的时区,可是,执行show timezone;之后,不论怎么样都是显示的是UTC时间。

环境变量

docker-compose的相关配置如下:

services:
  postgres:
    environment:
      - TZ=Asia/Shanghai
      - PGTZ=Asia/Shanghai
使用 Docker Compose 安装 Mattermost

Date: 1/1/2020Category: 运维技术Tag: Mattermost, Docker

本文适合那些正在寻找使用 Docker Compose 安装 Mattermost 的详细且简单的指南的人。

Mattermost是一种开源、可自托管的在线聊天服务,具有文件共享、搜索和集成功能。它被设计为组织和公司的内部聊天工具,主要将自己定位为 Slack 和 Microsoft Teams 的开源替代品。

💾您可以在GitHub上找到本指南中使用的存储库。

在 Postgres Docker 容器中安装扩展

Date: 1/1/2020Category: 运维技术Tag: Postgresql, Docker

最近,我想使用 Fluent 迁移器来为我的 postgres 数据库做种,该数据库作为 Docker 容器运行。我基本上有一个表 User,它有一个需要自动生成的 UUID 类型的主键。

我的迁移代码如下所示。

Create.Table(User.TABLE_NAME)
    .WithColumn("id").AsGuid().NotNullable().WithDefaultValue(SystemMethods.NewGuid).PrimaryKey()
    .WithColumn("username").AsString().NotNullable()
    .WithColumn("password").AsString().NotNullable();
如何在 Superset Docker 容器中安装 MySQL 驱动

Date: 4/9/2026Category: 运维技术Tag: Docker, Superset

Apache Superset 是一款功能强大的开源数据挖掘与可视化平台,支持多种数据源连接、自定义仪表盘和细粒度权限控制,广泛应用于数据运维与分析场景。由于 Superset 官方 Docker 镜像未默认集成 MySQL 驱动,在实际运维中,需手动安装驱动才能实现与 MySQL 数据库的正常连接。本文将详细介绍两种 Docker 部署方式(Docker run 和 Docker Compose)下,MySQL 驱动的完整安装流程,同时兼顾 Apache Doris 驱动安装(适配多数据源需求),并提供数据库配置方法和常见注意事项。

一、前置说明

可能是因为MySQL是使用的GPL协议,所以Superset官方镜像中未包含MySQL驱动,需要手动安装。

如何 Docker 化一个 GO 应用程序

Date: 1/1/2020Category: 运维技术Tag: Docker, Go

使用 Golang,可以构建小到简单的可执行工具大到完整的 Web 服务器的任何东西。为了交付应用程序,使用 Docker 是首选,它允许我们创建一个包含项目运行所需的一切的自包含环境。值得一提的是,Docker 命令行界面本身也是使用 GO 所开发。

为任何 GO 应用程序编写 Docker 镜像

通常,从一个尽可能小且具有所需基本依赖项的基本镜像开始,是一个好主意。alpine 镜像通常是一个可靠的选择,因为它们仅包含操作系统所需的最低限度。

所以,我们可以这样写 Dockerfile:

FROM golang:alpine3.15
怎样编译PostgreSQL扩展并安装到容器中去

Date: 1/1/2020Category: 运维技术Tag: Docker, PostgreSQL

通常PostgreSQL容器当中会内置一些扩展,一般存放在:/usr/lib/postgresql/{PostgreSQL版本号}/lib,扩展的实体都是.so文件,如果容器当中存在着扩展的so文件,那么就可以顺利的通过SQL语句进行安装,否则,则不能够顺利的安装,这时候,就需要编译扩展并拷贝进容器。

https://yum.postgresql.org/repopackages/

Docker清理磁盘空间

Date: 1/1/2020Category: 运维技术Tag: Docker

在日常运维当中,Docker会产生一些运行时的临时文件,我们需要定时的清理掉他们,不然将会对磁盘造成极大的压力。

探查命令

查看整个Docker系统的磁盘占用情况:

docker system df
使用Docker发布静态网站

Date: 1/1/2020Category: 运维技术Tag: Docker

创建Dockerfile

注册Docker Hub账号

Docker修剪未使用对象

Date: 1/1/2020Category: 运维技术Tag: Docker

Docker 采用保守的方法来清理未使用的对象,例如镜像(Image)、容器(Container)、数据卷(volume)和网络(Network)。也就是说,除非您明确告诉 Docker 这样做,否则每个对象都永远不会被删除。结果导致了 Docker 最终使用了大量的磁盘空间。对于每种类型的对象,Docker 都提供了一个 prune(删除)命令。此外,您可以一次清理多个对象类型。本主题介绍如何使用每个命令。

镜像(Image)修剪

docker image prune该命令可以清理未使用的镜像。默认情况下,该命令仅删除挂起的镜像。挂起的镜像是没有标签且不被其他容器引用的镜像。要删除挂起的镜像,只需要键入:docker image prune

为Docker容器运行的PostgreSQL安装插件

Date: 1/1/2020Category: 运维技术Tag: Docker, PostgreSQL

准备

查看PostgreSQL的版本号(有些插件带大版本号):

SELECT version();
Windows11 启动 Docker 提示端口被占用 无法启动

Date: 1/1/2020Category: 运维技术Tag: Docker

今天Windows11升级重启了,我启动RabbitMQ,然后提示端口被占用,而无法启动Docker. 提示信息如下:

listen tcp 0.0.0.0:1883: bind: An attempt was made to access a socket in a way forbidden by its access permissions.
Docker在国内没有代理的解决方案

Date: 1/1/2020Category: 运维技术Tag: Docker

Docker的国内代理都失效了,不抱怨,只讲如何解决问题。

简单来说,就是把本地的镜像导出来,然后打成压缩包,再拷贝到服务器上去,然后再导入。

导出镜像

docker save bitnami/minio:latest -o minio.tar
Docker 容器中安装VIM

Date: 1/1/2020Category: 运维技术Tag: Docker, VIM

Docker的容器当中一般是没有安装任何编辑器的,vi和vim神马的都没有.如果想要在容器中使用编辑器,需要自己去安装.
但是,在 Docker 中执行:apt-get update报错:

E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied)
Docker内部安装软件

Date: 1/1/2020Category: 运维技术Tag: Docker
docker exec -it {容器名} "apt update"
docker exec -it {容器名} "apt install {软件名}"
Docker Hub 镜像源

Date: 1/1/2020Category: 运维技术Tag: Docker Hub, Docker
提供商 公共镜像 私有镜像
网易云 http://hub-mirror.c.163.com
百度云 https://mirror.baidubce.com
腾讯云 https://ccr.ccs.tencentyun.com
Docker Proxy https://dockerproxy.com
华为云 https://05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com https://{你的ID}.mirror.swr.myhuaweicloud.com
阿里云 https://1nj0zren.mirror.aliyuncs.com http://{你的ID}.mirror.aliyuncs.com
DaoCloud http://f1361db2.m.daocloud.io
七牛云 https://reg-mirror.qiniu.com
Azure https://dockerhub.azk8s.cn
Docker中国区官方 https://registry.docker-cn.com
中国科学技术大学(适用于校园网) http://docker.mirrors.ustc.edu.cn
用Docker轻松搭建Swagger环境

Date: 1/1/2020Category: 运维技术Tag: Swagger, Docker

概要

我将介绍如何构建运行在 Docker 上的 Swagger 环境。

成果

Swagger Editor

网页的左侧是编辑器,右侧是Swagger UI,可以实时查看notation和查看定义文档。 如果将稍后描述的示例复制并粘贴到左侧,结果将显示在右侧,所以请尝试一下。

swagger_editor

Swagger UI

swagger_ui

Docker简单部署Traefik微服务网关

Date: 1/1/2020Category: 运维技术Tag: Traefik, Docker

什么是Traefik?

Traefik 是一款开源的反向代理与负载均衡工具,它监听后端的变化并自动更新服务配置。Traefik 最大的优点是能够与常见的微服务系统直接整合,可以实现自动化动态配置。目前支持 Docker、Swarm,Marathon、Mesos、Kubernetes、Consul、Etcd、Zookeeper、BoltDB 和 Rest API 等后端模型。

什么是微服务网关?

微服务网关是整个微服务API请求的入口,可以实现过滤Api接口。并且可以实现用户的验证登录、解决跨域、日志拦截、权限控制、限流、熔断、负载均衡、黑名单与白名单机制等。

本地部署Docker开发环境

Date: 1/1/2020Category: 运维技术Tag: Docker

  • Bash的换行符为 \

  • CMD的换行符为 ^

  • Powershell的换行符为 `

参数简析:

  • -p 宿主机端口:容器端口

需要设置Host:

# Added by Docker Desktop
192.168.1.6 host.docker.internal
192.168.1.6 gateway.docker.internal
# To allow the same kube context to work on the host and the container:
192.168.1.6 kubernetes.docker.internal
# End of section
使用 Bazel 创建Go应用程序的Docker容器镜像

Date: 1/1/2020Category: Go编程Tag: Bazel, Docker, Go

如果你知道Bazel,你就会知道它有多棒:它快速可靠。当您在使用多种服务的项目中工作时,甚至可能使用不同的语言,拥有一个快速可靠的构建系统,更重要的是,生成确定性构建是关键。

但是,您可能不知道使用它bazel来构建容器镜像是多么容易。您将从使用bazel应用到您的镜像构建过程中获得所有好处。另外,您不必处理丑陋的Dockerfiles。