curl上传文件到minio服务器

匿名用户上传

bash 复制代码
#!/bin/bash

bucket=mybucket
file=/home/database.yml

host=192.168.24.9:9000

resource="/${bucket}/${file}"
content_type="application/octet-stream"
date=`date -R`

echo $resource
echo "http://$host${resource}"

curl -v -X PUT -T "${file}" \
          -H "Host: $host" \
          -H "Date: ${date}" \
          -H "Content-Type: ${content_type}" \
          http://$host${resource}

使用账号密码上传

bash 复制代码
#!/bin/bash

ACCESS_KEY="minioadmin"
SECRET_KEY="minioadmin"
BUCKET_NAME="mybucket"
FILE_NAME="/home/database.yml"
OBJECT_NAME="database.yml"
MINIO_URL="192.168.24.9:9000"

# 生成日期和签名
DATE_VALUE="$(date -R)"
SIGNATURE="$(echo -en "PUT\n\n\n${DATE_VALUE}\n/${BUCKET_NAME}/${OBJECT_NAME}" | openssl sha1 -hmac "${SECRET_KEY}" -binary | base64)"

curl -i -X PUT --upload-file "${FILE_NAME}" \
     --header "Date: ${DATE_VALUE}" \
     --header "Authorization: AWS ${ACCESS_KEY}:${SIGNATURE}" \
     "${MINIO_URL}/${BUCKET_NAME}/${OBJECT_NAME}"
相关推荐
水饺编程6 小时前
第2章:Linux 基础,whoami 命令
linux·c语言·汇编
鱼很腾apoc6 小时前
【MySQL】 第2期 查询与函数系统详解:从基础 CRUD 到复合多表查询
linux·数据库·学习·mysql·dml
IMPYLH7 小时前
Linux 运维基础:从入门到实战的完整指南
linux·运维·php
Lsetea7 小时前
curl走HTTPS代理报SSL证书错误:proxy-cacert与cacert双层信任排查
linux·https·ssl证书·curl·代理服务器
星恒随风7 小时前
Linux进程间通信(二):深入理解System V共享内存、消息队列、信号量与内核IPC资源管理
linux·运维·服务器·笔记·学习·状态模式
yunwei377 小时前
eBPF 实例教程:BPF Arena 零拷贝共享内存
linux·后端·性能优化
IMPYLH7 小时前
Linux 文件检索:find、locate、grep 与 which 实战指南
linux·运维·服务器
脚踏实地,坚持不懈!8 小时前
Linux 内存回收机制:水位线、kswapd 与 Direct Reclaim
linux·jvm·算法
SKH.8 小时前
Linux驱动-key、中断
linux·运维·服务器
小龙报8 小时前
【零到全栈】从扩展名到终端实操,打通 Linux 基础
linux·ubuntu·云原生·职场和发展·创业创新·学习方法·程序员创富