docker
安装Docker
dockerfile
docker-compose
安装docker-compose
启动portainer
version: '2'
services:
portainer:
image: portainer/portainer
restart: always
ports:
- "9000:9000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /Users/Shared/dev/docker_file/portainer/data:/data
编译(交叉编译linux版本)
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build xxx.go
编译镜像(腾讯云)
docker build -t ccr.ccs.tencentyun.com/oyjx/xxx:v1.0.0 .
本地启动镜像
docker run -p 8070:8070 ccr.ccs.tencentyun.com/oyjx/xxx:v1.0.0
推送镜像
# 获取授权
docker login --username=100003110983 ccr.ccs.tencentyun.com
# 推送
docker push ccr.ccs.tencentyun.com/oyjx/xxx:v1.0.0
示例(以发布实战:Go语言开发分布式任务调度 轻松搞定高性能Crontab master节点镜像为例)
本地交叉编译linux版本
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build master.go
dockerfile
FROM golang as build
FROM alpine:3.7
COPY master /usr/bin
COPY master.json .
# 拷贝目录:https://www.cnblogs.com/sparkdev/p/9573248.html
COPY webroot ./webroot
ENV PORT=8070
RUN chmod +x /usr/bin/master
ENTRYPOINT ["master"]
编译镜像(腾讯云)
docker build -t ccr.ccs.tencentyun.com/corntab/master:v1.0.0 .
本地启动镜像
docker run -p 8070:8070 ccr.ccs.tencentyun.com/corntab/master:v1.0.0
推送镜像到(腾讯云)仓库
# 获取授权
docker login --username=100003110983 ccr.ccs.tencentyun.com
# 推送
docker push ccr.ccs.tencentyun.com/corntab/master:v1.0.0
docker-compose.yaml
# docker-compose.yml文件的版本
version: "2"
# 管理的服务
services:
corntab_master:
# 指定镜像
image: ccr.ccs.tencentyun.com/corntab/master:v1.0.0
ports:
# 端口映射
- 8070:8070
ulimits:
nproc: 65535
nofile:
soft: 20000
hard: 40000
logging:
driver: "json-file"
options:
max-size: "1g"
Portainer重置密码
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d720a0edca20 portainer/portainer "/portainer" 2 minutes ago Up 5 seconds 0.0.0.0:9000->9000/tcp portainer_portainer_1
b9b6d2794fdf redis:latest "docker-entrypoint.s…" 7 weeks ago Up 6 minutes 0.0.0.0:6379->6379/tcp db_redis_1
docker inspect portainer d720a0edca20 获取配置信息,关注配置
"HostConfig": {
"Binds": [
"/Users/Shared/dev/docker_file/portainer/data:/data:rw",
"/var/run/docker.sock:/var/run/docker.sock:rw"
],
停止运行portainer
docker run --rm -v /Users/Shared/dev/docker_file/portainer/data:/data:rw portainer/helper-reset-password
网络模型设置为host
使用network_mode: "host"
例如
# docker-compose.yml文件的版本
version: "2"
# 管理的服务
services:
booklib:
container_name: booklib
# 指定镜像
image: ccr.ccs.tencentyun.com/oyjx/booklib:v1.0.0
ports:
# 端口映射
- 8000:8000
ulimits:
nproc: 65535
nofile:
soft: 20000
hard: 40000
logging:
driver: "json-file"
options:
max-size: "1g"
network_mode: "db_default"
最后更新于
这有帮助吗?