小编0x5*_*6FF的帖子

来自守护进程的错误响应:无法杀死容器:权限被拒绝,如何在 Ubuntu 20.04 上杀死 docker 容器?

我试图杀死一个 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 端口?

ubuntu kill-process docker

17
推荐指数
4
解决办法
4万
查看次数

如何在FastAPI中的HTTP请求之间共享变量?

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)

python httprequest starlette fastapi

11
推荐指数
1
解决办法
1万
查看次数

从“uint256”到“地址”的 Solidity 转换

我想知道如何将 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);

如果有人可以帮助我解决转换这些数据类型的错误。

问候

type-conversion solidity

5
推荐指数
1
解决办法
8225
查看次数

'sa_relationship_kwargs={"lazy": "selectin"}' 在带有 Fastapi 的 SQLModel 上意味着什么?

我正在尝试将 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)

python foreign-keys fastapi sqlmodel

5
推荐指数
1
解决办法
4589
查看次数