备份 Docker 镜像容器和数据以及无痛迁移

本意上想要了解一下 Docker 容器中 Volume 的备份,毕竟重要的数据都在 Volume 中。然后顺带看了一下 Docker 镜像,容器的备份,不过镜像和容器托管到 Docker Hub 上也算是备份了。 Volume 可以叫做 数据卷,可供一个或者多个容器使用: 数据卷 可以在容器之间共享和重用 对 数据卷 的修改会立马生效 对 数据卷 的更新,不会影响镜像 数据卷 默认会一直存在,即使容器被删除 镜像备份 这里说的备份指的是直接从本地备份镜像文件,可以使用 docker save 命令将镜像打包成 tar 文件,之后 Read more ...

2018-03-16 linux , docker , container , image , volume

树莓派中安装 Docker 及 docker compose

仅仅作为记录,为了不让树莓派吃灰。主要参考官网这篇文章。 Docker 的好用程度已经不比多说,经过这两年的发展已经非常成熟,还记得一年前买的书已经跟不上Docker的发展了,所以这里还是推荐 Docker 的官方文档,要比市面上存在所有书籍要详细。不过要是想要了解 Docker 的内部技术还是有不少好书可以参考。跑偏了,回到正题。 安装 Docker 官方已经支持 Raspbian Jessie,所以可以直接安装: curl -sSL https://get.docker.com | sh Docker client 只能被 root 或者 Read more ...


使用 pt-online-schema-change 工具不锁表在线修改 MySQL 表结构

percona-toolkit 源自 Maatkit 和 Aspersa 工具,这两个工具是管理 MySQL 的最有名的工具,但 Maatkit 已经不维护了,全部归并到 percona-toolkit。Percona Toolkit 是一组高级的命令行工具,用来管理 MySQL 和系统任务,主要包括: 验证主节点和复制数据的一致性 有效的对记录行进行归档 找出重复的索引 总结 MySQL 服务器 从日志和 tcpdump 中分析查询 问题发生时收集重要的系统信息 在线修改表结构 这里主要介绍在线修改表结构功能。 在 Read more ...

2018-03-15 linux , mysql , table , ddl , sql

Java 查漏补缺之 stream

Java 8 中 stream 大大简化了 Collection 的操作,所以这篇文章就简单的了解下 stream 的基本用法,关于 collect,flatmap,map 等等更加高级的用法可能还需要另开一篇 总结。 Stream API 借助于同样新出现的 Lambda 表达式,极大的提高编程效率和程序可读性。同时它提供串行和并行两种模式进行汇聚操作,并发模式能够充分利用多核处理器的优势,使用 fork/join 并行方式来拆分任务和加速处理过程。 创建 stream 有很多种方法 通过集合的 stream() 方法或者 parallel Read more ...


VPS 云服务器能够做什么

很早以前买一台VPS主要的功能就是翻墙,然后常年也仅仅是跑一个 Shadowsocks,后来渐渐的发现其实有一台服务器即使只有单核1G,也能够用来做很多事情。以前我也看过一些文章讲述如何充分利用起VPS,但大部分除了说自建网站,挂机刷 YouTube 赚钱外也都没有什么实质性的内容。而自从开始接触Docker,我渐渐的发现了很多服务,因此我自己搜罗了一些。当然其实 GitHub 上有一个 Awesome Selfhosted 这里面列举了成百上千种可以自己托管部署的服务,几乎可以代替掉日常生活中用到的80%的服务,可以自建 nextcloud 代替 Dr Read more ...

2018-03-14 linux , vps , cloud , server , docker

docker volumes 中 -v 和 -mount 区别

Docker Volumes 机制通常用来给 Docker 容器保存持久化数据,使用 Volumes 有很多优势: 更容易备份和迁移 使用 Docker CLI 命令或者 Docker API 来管理 可以在 Linux 和 Windows 上使用 可以更安全得在多个容器中共享 Volume drivers 允许容器将内容保存到远端,云服务提供商,或者加密volume内容,或者增加其他功能 新 Volume 的内容可以被容器预先填充, volume 会先将容器内容拷贝到容器外目录 Volumes 通常也优于容器的可写层,使 Read more ...


使用 Docker 安装 gogs

Gogs 是一个能够自建Git托管服务的开源项目,用 Go 语言实现。因为较之 GitLab 轻量化一些,所以受到一定欢迎。 使用 Docker 来搭建 Gogs 服务时,需要额外依赖 MySQL,网上一般的教程都是先启动一个 MySQL 容器,开放端口,然后在启动 Gogs 容器配置。其实可以使用 docker-compose 一次性启动好。 version: '3.3' services: gogsdb: image: mysql:5.7 container_name: gogsdb restart: always Read more ...

2018-03-12 docker , gogs , git , github

docker-compose 中 links 和 depends_on 区别

以下的内容适用于 docker-compose 版本 version 2 和 version 3。先来看 Docker 官方文档中关于 Docker Compose and Django的例子,可以使用 depends_on 来访问容器中的数据 version: '2' services: db: image: postgres web: build: . command: python manage.py runserver 0.0.0.0:8000 volumes: - .:/code p Read more ...

2018-03-12 docker , docker-compose , linux

使用 privoxy 转发 socks 到 http

Privoxy 是一款不进行网页缓存且自带过滤功能的代理服务器,本文主要使用其 socks 转 http 代理的功能。Privoxy 也能够过滤网页内容,管理 Cookie,控制访问,去广告、横幅、弹窗等等,因此可以作为广告过滤。 Privoxy is a non-caching web proxy with advanced filtering capabilities for enhancing privacy, modifying web page data and HTTP headers, controlling access, and Read more ...

2018-03-11 linux , proxy , socks , http , proxychains

Docker 容器日志相关命令

系统运行一段时间之后难免容器会出现问题,出现问题并不可怕,可怕的是不知道问题出现在哪里,这个时候查看当前容器运行的日志就能够排查出一些问题。 在之前的文章 中,学会了如何创建,查看,移除等等管理容器的方法,其实查看日志也和这些方法类似。 比如要查看容器所有运行的日志可以使用,下面的 containerId 都可以被替换为容器的名字: docker logs [containerId] 如果要持续观察容器的日志输出,可以使用 -f 或者 --follow 参数 docker logs -f [containerId] 但是这个命令在不同系统 Read more ...

2018-03-10 docker , logs , linux

最近文章

  • Trae 字节推出的一款本地 AI 代码编辑器 前两天看到字节也发布了一款基于 Claude Sonnet 3.5 的 IDE,起名叫做 Trae(这个名字是 The Real AI Engineer 的缩写),对标我之前介绍过的 Cursor,Windsurf 等等代码编辑器,都是以 AI 为切入点,辅助进行编码,不仅可以进行自动代码生成补全,还可以理解上下文,通过超长的 Context 提供多文件生成修改的能力。
  • Tianji 开源的网站流量分析,服务监控系统 Tianji 是一个 All in One 的网站分析(Website analytics),服务监控(Uptime Monitor),业务告警(Server Status)的系统。
  • Cline 强大的 AI 辅助编程工具 之前的文章中介绍过 AI 支持的编辑器 Cursor,还介绍过 Codium 推出的 AI 智能编辑器 Windsurf,很早之前也介绍过如何在 JetBrains IntelliJ IDEA 中使用 GitHub Copilot 以及如何在命令行终端下使用 GitHub Copilot CLI 可以在终端下完成一些 AI 智能补全,提示等等操作。
  • 利用 PirateShip 打单节省美国转运费用 之前因为申请 [[ITIN]] 已经申请了一个 Anytime Mailbox 美国的私人地址,但是如果直接让 Anytime Mailbox 房东转寄邮件,价格非常昂贵,以我自己的经验只邮寄 0.1 磅不到的信件,房东报价就高达 70 美元。所以这篇文章我就总结一下如何与 Anytime Mailbox 的房东进行沟通并让房东使用我们自己提供的邮寄单,将我的物品从美国寄送回来。
  • Mint Mobile 又一家美国移动网络运营商 在之前的一篇文章中,因为在 Mint Mobile 上的商城上购买了 299 美元 Pixel 9 手机,暂时了解到了 Mint Mobile 这家公司,这里再来详细地介绍一下这家公司。