facefusion容器化部署

以非持久化存储方式部署

1、拉取facefusion3.0.0镜像

docker pull registry.cn-beijing.aliyuncs.com/codewithgpu2/facefusion-facefusion:zNAvwLjrMp

2、创建facefusion容器,设置启动GPU,设置端口号、以及共享内存大小

docker run -id --name=ff --gpus all -p 6006:6006 --shm-size 7g registry.cn-beijing.aliyuncs.com/codewithgpu2/facefusion-facefusion:zNAvwLjrMp

3、进入容器

docker exec -it ff /bin/bash

4、修改facefusion服务ip和端口号

vi /root/facefusion/facefusion/uis/layouts/default.py

修改内容如下:

def run(ui : gradio.Blocks) -> None:
ui.launch(favicon_path = 'facefusion.ico', inbrowser = state_manager.get_item('open_browser'), server_name='0.0.0.0', server_port=6006)

5、启动facefusion服务

source activate facefusion && cd /root/facefusion && python facefusion.py run -o /root/outputs --execution-providers cuda cpu --skip-download

以持久化存储方式部署

1、拉取facefusion3.0.0镜像

docker pull registry.cn-beijing.aliyuncs.com/codewithgpu2/facefusion-facefusion:zNAvwLjrMp

2、以volume挂载的方式创建容器

docker run -id --name=ff --gpus all -p 6006:6006 --shm-size 7g -v /home/panzhe/ff_docker_v/default.py:/root/facefusion/facefusion/uis/layouts/default.py -v /home/panzhe/ff_docker_v/run.sh:/root/run.sh -v /home/panzhe/ff_docker_v/outputs:/root/outputs registry.cn-beijing.aliyuncs.com/codewithgpu2/facefusion-facefusion:zNAvwLjrMp

3、进入容器

docker exec -it ff /bin/bash

4、启动facefusion服务

source activate facefusion && cd /root/facefusion && python facefusion.py run -o /root/outputs --execution-providers cuda cpu --skip-download

查看GPU使用情况

watch -n 1 nvidia-smi

-n 1代表每隔1秒刷新一次,ctrl+c退出。