docker golang:alpine CGO 制作镜像的正确姿势

当程序需要引入C/C++库(比如支持Sqlite数据库)的时候,编译环境需要打开CGO,否则打包完成后的程序就不能顺利运行(数据库初始化失败)。 这时就需要安装 build-base 配置编译环境。 参考 Dockerfile 如下: FROM golang:alpine as builder ENV CGO_ENABLED=1 WORKDIR /app COPY . . RUN apk add --no-cache --update git build-base RUN g

第一个Kubernetes应用

这两天搭建了一个Kubernetes集群,包含三个节点,如图所示: 接下来该学习如何在k8s集群上运行第一个k8s应用了。 准备镜像 首先第一步,我们应该准备我们运行这个应用所需要的容器镜像。 编写应用配置文件 有了容器镜像之后,我们需要编写应用配置文件告诉k8s我们想要如何运行我们的容器。 应用配置文件一般是YAML格式的,其中包含容器的定义、参数、配置等等信息,然后只需一条指令(kubectl create -f)就可以通过这个YAML文件把容器运行起来。

第一个Kubernetes应用

这两天搭建了一个Kubernetes集群,包含三个节点,如图所示: 接下来该学习如何在k8s集群上运行第一个k8s应用了。 准备镜像 首先第一步,我们应该准备我们运行这个应用所需要的容器镜像。 编写应用配置文件 有了容器镜像之后,我们需要编写应用配置文件告诉k8s我们想要如何运行我们的容器。 应用配置文件一般是YAML格式的,其中包含容器的定义、参数、配置等等信息,然后只需一条指令(kubectl create -f)就可以通过这个YAML文件把容器运行起来。

译文:取得非凡成功的 13 点想法

文 / Sam Altman 译 / 元否 鸡汤与非鸡汤最重要的差别在于:它是否给你明确的指导建议,而在山姆的这篇推文里里,写明了很多可执行的建议,这适合许多渴望上进的人读一读。 我观察了数以万计的创始人,并深度思考了赚到财富或创造重要事物所需的条件。我发现,人们一开始都会追求前者,而到最后都会渴望后者。 下面是关于如何实现这种非凡成功的 13 点想法。当你取得了一定的成绩(通过特权或努力得到),并且希望付出更多努力将其转化为非凡的成功,那么这些想法会对你很有帮助,而且适用于