我试图杀死一个 docker 容器,但我的许可被拒绝。我使用Ubuntu 20.04,我的客户端docker版本是20.10.7,服务器版本是20.10.11。
这是我得到的日志:
Error response from daemon: Cannot kill container: fastapi_server: permission denied
Run Code Online (Sandbox Code Playgroud)
我读到我应该使用这个命令来重新启动 docker。
sudo systemctl restart docker.socket docker.service
Run Code Online (Sandbox Code Playgroud)
但问题是,当我执行此命令时,我的所有容器和图像都会消失,但如果我尝试在 localhost:8000 上,我的端口被我想要删除的容器占用。如果我运行sudo netstat -anp | grep 8000,我会得到:
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 2493/docker-proxy
tcp6 0 0 :::8000 :::* LISTEN 2500/docker-proxy
Run Code Online (Sandbox Code Playgroud)
所以这证实了我的端口已经被 docker 容器占用,但是当我运行时docker ps -a,我没有得到任何容器。我也尝试过docker kill,但没有成功。
我应该如何杀死这个容器并释放我的 8000 端口?
HTTP如何在 FastAPI 的请求之间共享变量值?例如,我有一个POST请求,其中我获取一些音频文件,然后将它们的信息转换为 Pandas Dataframe。我想在请求Dataframe中发送它GET,但我无法访问Dataframe请求GET范围。
@app.post(
path="/upload-audios/",
status_code=status.HTTP_200_OK
)
async def upload_audios(audios: list[UploadFile] = File(...)):
filenames = [audio.filename for audio in audios]
audio_data = [audio.file for audio in audios]
new_data = []
final_data = []
header = ["name", "file"]
for i in range(len(audios)):
new_data = [filenames[i], audio_data[i]]
final_data.append(new_data)
new_df = pd.DataFrame(final_data, columns=header)
return f"You have uploaded {len(audios)} audios which names are: {filenames}"
@app.get("/get-dataframe/")
async def get_dataframe():
pass
Run Code Online (Sandbox Code Playgroud) 我想知道如何将 uint256 数据类型转换为 Solidity 最新版本上的地址。
这是我正在开发的代码的示例。
function setDetails(string memory _name) public onlyAuthCaller returns(address){
uint256 tmpData = uint256(keccak256(abi.encodePacked(msg.sender, block.timestamp)));
address batchNo = address(tmpData);
detailsData.name = _name;
batchDetails[batchNo] = detailsData;
nextAction[batchNo] = 'NEXT';
return batchNo;
}
Run Code Online (Sandbox Code Playgroud)
在 Remix 上,我遇到了 TypeError: Explicit type conversion not allowed from "uint256" to "address" on line:address batchNo = address(tmpData);
如果有人可以帮助我解决转换这些数据类型的错误。
问候
我正在尝试将 SQLModel 与 Fastapi 结合使用,在路上我发现了这个用于实现实体关系的示例,我想知道这意味着什么sa_relationship_kwargs={"lazy": "selectin"}以及它有什么作用?
class UserBase(SQLModel):
first_name: str
last_name: str
email: EmailStr = Field(nullable=True, index=True, sa_column_kwargs={"unique": True})
is_active: bool = Field(default=True)
is_superuser: bool = Field(default=False)
birthdate: Optional[datetime]
phone: Optional[str]
state: Optional[str]
country: Optional[str]
address: Optional[str]
created_at: Optional[datetime]
updated_at: Optional[datetime]
class User(UserBase, table=True):
id: Optional[int] = Field(default=None, nullable=False, primary_key=True)
hashed_password: str = Field(
nullable=False, index=True
)
role_id: Optional[int] = Field(default=None, foreign_key="role.id")
role: Optional["Role"] = Relationship(back_populates="users", sa_relationship_kwargs={"lazy": "selectin"})
groups: List["Group"] = Relationship(back_populates="users", link_model=LinkGroupUser)
Run Code Online (Sandbox Code Playgroud) fastapi ×2
python ×2
docker ×1
foreign-keys ×1
httprequest ×1
kill-process ×1
solidity ×1
sqlmodel ×1
starlette ×1
ubuntu ×1